w--*_*w-- 6 python django django-models django-queryset django-rest-framework
这是我的另一个问题
django-rest-framework,多模型继承,ModelSerializers和嵌套序列化
在django rest框架中我们可以像这样定义嵌套模型序列化器
class OtherModelSerializer(serializer.ModelSerializer):
mybasemodel_set = MyBaseModelSerializer(many=True)
class Meta:
model = OtherModel
Run Code Online (Sandbox Code Playgroud)
当我们创建一个OtherModelSerializer时,MyBaseModelSerializer在__init__运行之前被实例化.我相信是这种情况,因为如果我覆盖__init__()MyBaseModelSerializer并检查"实例",则它是None.
我的问题是什么时候以及如何MyBaseModelSerializer通过查询集或实例mybasemodel_set?
我的目标是覆盖我们这样做时发生的事情.
这条线
mybasemodel_set = MyBaseModelSerializer(many=True)
Run Code Online (Sandbox Code Playgroud)
将初始化类的实例MyBaseModelSerializer并many=True作为参数传递。
MyBaseModelSerializer 如何传递查询集或实例?
我不是 100% 确定你想做什么,但很可能
class MyBaseModelSerializer(serializers.ModelSerializer):
def to_representation(self, instance):
pass
Run Code Online (Sandbox Code Playgroud)
是您正在寻找的功能。您将获得一个实例并期望返回序列化数据。