如何将Django平面页面渲染为带有换行符的纯文本(不允许使用html标签)

时间:2017-12-21 20:51:21

标签: python html django

我们一直需要更新位于Django项目根目录的ads.txt文件。更新此文件的当前方法是ftp和开发人员执行的“service nginx restart”。我们现在想要使用平面页面和模板执行此操作,只需通过Django管理应用程序将“非开发人员”剪切并粘贴ads.txt文件的内容到Content:字段中,保存并且一切都应该很好。问题是除非我们添加html <br>标记,否则换行不会呈现。这会导致ads.txt文件不通过验证测试,因为不允许使用html,只有纯文本。我们怎样才能做到这一点? 模板只是

{{ flatpage.content }}

尝试

{{ flatpage.content|linebreaks }}

导致html标记插入到呈现的页面中,并且无法通过ads.txt测试。我们尝试了各种组合,例如

(r'^ads_txt/$', 'media.views.custom_header')

在urls.py和

def custom_header(self):
    self.response.headers['Content-Type'] = 'text/plain'
在views.py中

无济于事。

1 个答案:

答案 0 :(得分:1)

您是否尝试过striptags代码?

{{ flatpage.content|linebreaks|striptags }}