全部,
我正在尝试用相关模型中的字段替换标准外键字段序列化。
这里有一些代码:
class Foo(models.Model):
name = models.CharField()
bar = models.ForeignKey("Bar")
class Bar(models.Model):
name = models.CharField()
class FooSerializer(serializers.ModelSerializer):
class Meta:
model = Foo
fields = ("id", "name", "bar", )
bar = serializers.SlugRelatedField(read_only=True, slug_field="name")
但无论我做什么,它都使用bar实例的pk进行序列化,而不是它的名称。
你知道我做错了什么吗?
谢谢。
尝试这样做:
class FooSerializer(serializers.ModelSerializer):
bar = serializers.StringRelatedField(read_only=True)
class Meta:
model = Foo
fields = ("id", "name", "bar", )
它应该只返回字符串格式的名称。