django - 如何在 django rest 框架中删除 Ck 编辑器标签
问题描述
我正在使用 Django 休息框架。我用于 Web 的 CkEditor 标签出现在 API 部分。如何从 API 中删除这些标签
我之前没有使用过 Ckeditor,我使用的是 Django TextField 字段
模型.py
class Lesson(models.Model):
...
lesson_content = RichTextField(
verbose_name=_('Ders İçeriği'),
blank=True
)
...
序列化程序.py
class LessonSerializer(serializers.ModelSerializer):
class Meta:
model = Lesson
fields = (...,'lesson_content',...)
输出(Json 数据)
"id":1,
"user":2,
"lesson_name":"Microprocessors","lesson_content":"/<p>Merkezi .</p>",
"lesson_notes":"<p> </p>\r\n\r\n<p>Yazıcı, R., 1998, Mikrobilgisayar Donanım ve Yazılımı, KTÜ Yayınları, Trabzon, 345 s.</p>\r\n\r\n<p>Brey, B., B., 1984, Microprocessor/Hardware Interfacing and Applications, Merrill, 414 p.</p>\r\n\r\n<p>Leventhal, L., A., 1979, Z80 Assebly Language Programming, Osborne/McGraw-Hill, 612 p.</p>\r\n\r\n<p>Uffenbeck, J., 1985, Microcomputers and Microprocessors: The 8080, 8085, and Z80 Programming, Interfacing, and Troubleshooting, Prentice-Hall, 670 p.</p>\r\n\r\n<p> </p>"
<p> & nbsp; </p> \ r \ n \ r \ n <p> I don't want the tags to appear
解决方案
您可以尝试to_representation
在序列化程序类中覆盖方法并使用strip_tags
:
from django.utils.html import strip_tags
class LessonSerializer(serializers.ModelSerializer):
class Meta:
model = Lesson
fields = (...,'lesson_content',...)
def to_representation(self, instance):
data = super().to_representation(instance)
data['lesson_content'] = strip_tags(instance.lesson_content)
return data
推荐阅读
- php - 如何使用右连接和 MYSQL 案例获取两列的数据
- google-maps - 查找街道的起点和终点节点
- javascript - 列表中未定义的值
- javascript - JQ 事件在按 datatable.js 的提取行排序上没有激活
- css - 在不改变大小的情况下创建一侧边框在引导网格中
- mongodb - Mongo - 保存文档时出错:1 在写入数据库时不是主要的
- android - 本地通知实现
- javascript - 找不到 TypeScript 自定义定义文件
- asp.net - Asp.net mvc 5 身份 smtp 连接
- c++ - 如何在 if 语句中放入二维字符串数组?