Django-CKeditor:如何在模板中显示 RichTextFields
Posted
技术标签:
【中文标题】Django-CKeditor:如何在模板中显示 RichTextFields【英文标题】:Django-CKeditor: How to show RichTextFields in templates 【发布时间】:2018-01-23 14:16:36 【问题描述】:问题是我想在模板中显示帖子的内容,但我不知道如何
Post的模型是:
from ckeditor.fields import RichTextField
class Post(models.Model):
...
content = RichTextField(verbose_name='contenido')
...
在模板中,我有一个用于显示所有类似这样的帖子:
% for post in posts %
...
post.content
...
% endfor %
但是当我在浏览器中看到页面时显示:
发布内容
取而代之的是: 发布内容
【问题讨论】:
【参考方案1】:您需要将内容标记为安全。因此,将您的模板更改为:
% for post in posts %
...
post.content|safe
...
% endfor %
默认情况下,html 不会转义,因此会显示为文本,这就是您看到 <p>
标记的原因。您需要将该字段标记为safe
,以便 Django 将其呈现为 HTML。请参阅documentation 了解更多信息。
【讨论】:
非常感谢!发布此问题后,我在其他帖子中看到了答案。 嘿伙计,你知道如何设置模板中的文本样式吗?我尝试<p class="bootstrap classes"> item.description|safe </p>
,但bootstrap classes
没有被加载。我该如何设计它?【参考方案2】:
article.body|safe
或
article.body|truncatechars:150|safe
或
article.body|truncatewords:25|safe
【讨论】:
以上是关于Django-CKeditor:如何在模板中显示 RichTextFields的主要内容,如果未能解决你的问题,请参考以下文章
如何设置最大图像大小以在 django-ckeditor 中上传图像?