【问题标题】:How to change encoding in Django-rest-framework如何在 Django-rest-framework 中更改编码
【发布时间】:2013-11-18 10:47:59
【问题描述】:

我通过 django rest 框架以简单的方式获取我的 JSON API,我的 serializers.py 看起来像:

class ArticleSerializer(serializers.ModelSerializer):
    photo_set = PhotoSerializer(many=True)

    read_only = True

    class Meta:
    model = Article
    fields = (
        'id',
        'pub_date',
        'slug', 
        'title',
        'text',
        'youtube',
        'vimeo',
        'photoview',
        'photo_set',
        )

在views.py中:

class ArticleViewSet(viewsets.ModelViewSet):
    queryset = Article.objects.all()
    serializer_class = ArticleSerializer

我在我的文本字段中使用纺织标记语言。

如果我序列化例如波兰语“ę”我得到“Ä™”。怎么改成“ę”?

【问题讨论】:

    标签: python django django-rest-framework


    【解决方案1】:

    尝试在您的ViewSet 中定义UnicodeJSONRenderer

    from rest_framework.renderers import UnicodeJSONRenderer
    
    class ArticleViewSet(viewsets.ModelViewSet):
        renderer_classes = (UnicodeJSONRenderer,)
        ...
    

    【讨论】:

    • 告诉我你如何测试序列化器以及它是哪个 django 版本?
    • 在 DRF 3.0 中,UnicodeJSONRenderer 更改为 JSONRenderer
    猜你喜欢
    • 2016-12-15
    • 1970-01-01
    • 2021-04-22
    • 2017-10-06
    • 1970-01-01
    • 2018-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多