使用Django渲染iCal .ics文件:修复不正确的换行符
我正在使用Django的render_to_response
功能,动态生成一个.ics文件供用户下载。这个.ics文件的内容本身是没问题的,用这个工具检查后也通过了验证。不过,当我上传生成的文件时,却出现了这个错误:
你的日历使用了无效的换行格式。请确保使用\r\n来结束行,而不仅仅是\n(RFC 2445 §4.1)。
有没有办法让render_to_response
生成的页面使用\r\n
作为换行符,而不是仅仅使用\n
呢?我感觉这可能是某个低级的Python设置,而我在Django中不容易修改。
也欢迎考虑其他合理的解决方案!谢谢。
1 个回答
1
render_to_response
是一个简化的写法,用来代替 Template.render(Context)
。如果你自己调用 Template.render
,它会返回一个字符串。这样你就可以接着使用 string.replace('\n', '\r\n')
来替换字符串中的内容。