【问题标题】:How to treat CMS fields that support HTML [Django]如何处理支持 HTML [Django] 的 CMS 字段
【发布时间】:2018-06-23 17:58:55
【问题描述】:

我有一个带有 Post 对象的 Django 站点,如下所示:

class Post(models.Model):
    title = models.CharField(max_length=100,blank=True,null=True)
    body = models.TextField(blank=True,null=True)
    author = models.ForeignKey(User,blank=True,null=True)
    date_created = models.DateTimeField(default=timezone.now)
    date_updated = models.DateTimeField(auto_now_add=True)
    image = models.ImageField(upload_to=post_dir, blank=True, null=True)
    def __unicode__(self):
        return unicode(self.date_created.strftime('%Y-%m-%d %H:%M') + ' ' + self.title)

像这样输出body TextField以支持HTML:

    {% if post.body %}
        <p>
            {{ post.body | safe }}
        </p>
    {% endif %}

我的问题是,由于管理员可以输入可能导致 html 格式错误的 HTML(例如 post.body = '&lt;/div&gt;&lt;/div&gt;'),那么在仍然允许用户输入 html 的同时格式化和清理此文本字段的最佳方法是什么?

【问题讨论】:

标签: html django content-management-system


【解决方案1】:

我使用 django-ckeditor 获得了所需的功能和一些额外功能

【讨论】:

    猜你喜欢
    • 2018-10-14
    • 2019-07-16
    • 1970-01-01
    • 2019-12-06
    • 1970-01-01
    • 1970-01-01
    • 2012-12-29
    • 1970-01-01
    • 2019-08-17
    相关资源
    最近更新 更多