Django有效地获取ForeignKey模型的字段?

Django有效地获取ForeignKey模型的字段?,django,django-models,django-rest-framework,django-views,Django,Django Models,Django Rest Framework,Django Views,我使用django rest框架作为后端,使用react作为前端 例如,如果我在Django中有以下表格 class Master1(models.Model): field1 = models.CharField(max_length = 100) field2 = models.CharField(max_length = 100) field3 = models.CharField(max_length = 100) class Master2(models.Mo

我使用django rest框架作为后端,使用react作为前端

例如,如果我在Django中有以下表格

class Master1(models.Model):
    field1 = models.CharField(max_length = 100)
    field2 = models.CharField(max_length = 100)
    field3 = models.CharField(max_length = 100)

class Master2(models.Model):
    field1 = models.CharField(max_length = 100)
    field2 = models.CharField(max_length = 100)
    field3 = models.CharField(max_length = 100)

class Transaction(models.Model):
    master1 = models.ForeignKey(Master1)
    master2 = models.ForeignKey(Master2)
    title = models.CharField(max_length = 100)
我想为Trasaction创建一个视图,该视图在前端显示每个相关模型的多个字段。有人能提出一个有效的方法吗

我应该在视图中定义它所需的字段还是使用嵌套序列化程序?

您可以使用功能从序列化程序中的
Master1/Master2
模型加载数据:

class TransactionSerializer(serializers.ModelSerializer):
    class Meta:
        model = Transaction
        fields = "__all__"
        depth = 1
要从DB中高效地加载这些FK数据,请使用。例如:

queryset = Transaction.objects.select_related('master1', 'master2')
data = TransactionSerializer(queryset, many=True).data

深度属性基本上是嵌套ForeignKey字段的序列化,对吗?谢谢,你也可以看看这个链接,这是我问的另一个问题。和这个有点关系