所有
我正在尝试用相关模型中的字段替换标准的外键字段序列化。
以下是一些代码:
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序列化,而不是它的名字。
关于我做错的任何想法?
感谢。
答案 0 :(得分:1)
尝试这样做:
class FooSerializer(serializers.ModelSerializer):
bar = serializers.StringRelatedField(read_only=True)
class Meta:
model = Foo
fields = ("id", "name", "bar", )
这应该只返回字符串格式的名称。