Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用Django REST框架显示富文本上传字段_Javascript_Python_Json_Django_Django Rest Framework - Fatal编程技术网

Javascript 使用Django REST框架显示富文本上传字段

Javascript 使用Django REST框架显示富文本上传字段,javascript,python,json,django,django-rest-framework,Javascript,Python,Json,Django,Django Rest Framework,我有一个在Python3上运行的Django应用程序,它设置了一个基本的博客应用程序。在我的Post模型中,我为特定Post的内容设置了以下内容 从ckeditor\u uploader.fields导入RichTextUploadingField 班级职务(models.Model): content=RichTextUploadingField() 我还设置了Django的REST框架,因此当我向/api/posts/slug=abc-123发出GET请求时,它会运行以下命令: class

我有一个在Python3上运行的Django应用程序,它设置了一个基本的博客应用程序。在我的
Post
模型中,我为特定Post的内容设置了以下内容

从ckeditor\u uploader.fields导入RichTextUploadingField
班级职务(models.Model):
content=RichTextUploadingField()
我还设置了Django的REST框架,因此当我向
/api/posts/slug=abc-123
发出
GET
请求时,它会运行以下命令:

class PostViewSet(viewsets.ViewSetMixin,泛型.ListAPIView):
"""
允许查看帖子的API端点。
"""
序列化程序\u类=后序列化程序
def get_queryset(自我):
queryset=Post.objects.all()
#一堆Django过滤器
返回查询集
并将返回如下内容:

{
    "title" : "Abc 123",
    "slug" : "abc-123,
    "content" : "According to a survey, '93% of executives believe
                 that an employee’s style of dress at work 
                 influences his/her chance at a promotion&#39;.</p>\r\n\r\n<p>
                 This is more content blah blah blah."
}
{
“标题”:“Abc 123”,
“鼻涕虫”:“abc-123,
“内容”:“根据一项调查,93%的高管认为
员工的工作着装风格
影响他/她的晋升机会';

\r\n\r\n 这是更多的内容废话。” }
(忽略JSON有换行符这一事实,即为了可读性,假设它是格式正确的JSON文件)

正如您所看到的,结果的
内容
具有类似
\r
\n
的字符。这在Django中使用此
{content | safe}}
进行渲染,在Django渲染页面时效果良好,但我希望在不使用Django作为后端的web应用程序中显示此数据

长话短说,我需要一个javascript(或typescript)库,该库将以Django使用其内置的
安全
过滤器的方式呈现
内容的值。注意它必须是一个独立于Django的库,只能在客户端使用


,我需要一种方法来存储内容,该方法仍然允许Django中的
RichTextUploadingField
的所有功能,并且不影响Django的呈现,但允许我以某种方式在
HTML
中呈现内容。

未测试代码,您可以尝试:

class PostSerializer(serializers.ModelSerializer):
    content = serializers.SerializerMethodField()

    def get_content(self, instance):
        from django.utils.safestring import mark_safe
        return mark_safe(instance.content)

    class Meta:
        model = Post
        fields = '__all__'

SerializerMethodField是只读字段。所以我无法上传数据。有解决方案吗?