我正在使用Django Rest Framework序列化外键集,我有以下模型:
class Transaction(models.Model):
...
class TransactionStatus(models.Model):
transaction = models.ForeignKey(Transaction)
...
我有两个这些模型的序列化器,其中一个看起来像这样:
class TransactionSerializer(serializers.ModelSerializer):
transactionstatus_set = TransactionStatusSerializer(many=True, read_only=True)
class Meta:
model = Transaction
depth = 1
fields = ('id', 'transactionstatus_set')
我想在这里有一个来自后面引用的_set queryset的事务状态列表......但是事务中,在API中看起来只是一个非常尴尬的名称..
答案 0 :(得分:9)
经过快速实验后,我发现这可以解决问题:
class TransactionSerializer(serializers.ModelSerializer):
changes = TransactionStatusSerializer(many=True, read_only=True, source='transactionstatus_set')
class Meta:
model = Transaction
depth = 1
fields = ('id', 'changes')
现在我有一个由外键链接的状态列表,名字很好......