如何更改主键的django rest默认行为

时间:2015-05-19 05:30:38

标签: django django-rest-framework

根据文件

http://www.django-rest-framework.org/api-guide/serializers/

  

默认的ModelSerializer使用关键主键

默认情况下,对于关系船,它将使用

PrimaryKeyRelatedField

现在我想要而不是PrimaryKeyRelatedField django休息应该使用

CustomPrimaryKeyRelatedField默认情况下。

我不想在我的30个序列化程序中手动编写它,如果没有定义则只需要使用CustomPrimaryKeyRelatedField

我需要覆盖哪一件事

1 个答案:

答案 0 :(得分:1)

如果要在不修改代码的情况下覆盖此行为,则需要修改包源代码。我认为在ModelSerializer https://github.com/tomchristie/django-rest-framework/blob/master/rest_framework/serializers.py中更改serializer_related_field就足够了。

更好的方法是在项目中创建一个继承自ModelSerializer的类并覆盖此单个字段,然后在项目ModelSerializer中用MyModelSerializer替换。