创建帖子时,我使用 django-ckeditor 作为所见即所得的文本编辑器。它可以毫无问题地捕获并保存内容和正确的 HTML 标签。但是,我的模板呈现由标签包围的<p>
变量,这会破坏 RichTextField,因为<p>
标签不能嵌套。结果,它将所有文本(带有标签)显示为没有格式的段落。我意识到发生了这种情况,所以我将模板中的周围标签更改为<div>
标签,但是当模板加载到浏览器上时,它再次将 div 标签替换为段落标签。我怎样才能摆脱<p>
标签,以便我的文本以正确的格式呈现?
这是我的模板:
{% extends 'bandwagon/base.html' %}
{% block content %}
<article class="media content-section">
<img src="{{ post.author.profile.image.url }}" alt="profile photo" class="rounded-circle article-img">
<div class="media-body">
<img src="{{ post.image.url }}" class="post-img">
<div class="article-metadata">
<a class="mr-2" href="{% url 'user-posts' object.author.username %}">{{ object.author }}</a>
<small class="text-muted">{{ object.date_posted | date:'F d, Y'}}</small>
{% if object.author == user %}
<div>
<a href="{% url 'post-update' object.id %}" class="btn btn-outline-secondary btn-sm mt-1 mb-1">Edit</a>
<a href="{% url 'post-delete' object.id %}" class="btn btn-outline-danger btn-sm mt-1 mb-1">Delete</a>
</div>
{% endif %}
</div>
<h2 class='article-title-detail'>{{ object.title }}</h2>
<div class="article-content">{{ object.content | safe }}</div>
</div>
</article>
{% endblock content %}
但是,在浏览器中,响应是这样的:
<p class="article-content"><h3>Fake Content</h3>
<h3><span style="font-size:13px">Fake Content</span></h3></p>