我有这两个模型,它们在我的Django Rest Framework(v3.14)项目中的不同应用程序上运行。
我如何实现这个序列化程序?此外,我愿意接受你的建议,如果这是不可能的。TIA
到目前为止我所尝试的:
型号(App1):
class Model1(models.Model):
created = models.DateTimeField(auto_now_add=True)
updated = models.DateTimeField(auto_now=True)
barcode = models.CharField(max_length=100, unique=True, blank=False, null=False)
shortname = models.CharField(max_length=50, blank=False, null=False)
型号(App2):
class Items(models.Model):
created = models.DateTimeField(auto_now_add=True)
updated = models.DateTimeField(auto_now=True)
transno = models.CharField(max_length=100, blank=True, null=True)
barcode = models.ForeignKey("app1.Model1", to_field="barcode", db_column="barcode", on_delete=models.CASCADE, related_name="app2_items")
我想做什么?
显示如下输出(在GET请求时):
[
{
created: "2023-05-26 00:00:00",
updated: "2023-05-26 00:00:00",
transno: "123456",
model1: {
created: "2023-05-26 00:00:00",
updated: "2023-05-26 00:00:00",
barcode: "123134",
shortname: ""
}
}
]
1条答案
按热度按时间o2g1uqev1#
您可以创建两个单独的序列化程序。一个用于
Items
,另一个用于Model1
。在
app1/serializers.py
中:另一个是
app2/serializers.py
:现在您可以使用
ItemSerializer
来返回数据沿着条形码的详细信息。