如何解决如何从Django rest框架的多个模型中仅选择我想要的字段?
这是我的模型。py:
class UnitOfMeasurement(models.Model):
active = models.BooleanField(default=True)
name = models.CharField(max_length=255)
measurement_type = models.CharField(max_length=255)
def __str__(self):
return self.name
class Category(models.Model):
name = models.CharField(max_length=250)
abbreviation=models.CharField(max_length=10)
active = models.BooleanField(default=True)
description=models.CharField(max_length=500,blank=True,null=True)
def __str__(self):
return self.name
class Product(models.Model):
active = models.BooleanField(default=True)
bar_code = models.CharField(max_length=50,blank = True,null = True)
name = models.CharField(max_length=250)
category = models.ForeignKey(
Category,on_delete=models.CASCADE,related_name='product')
brand = models.CharField(max_length=250)
model = models.CharField(max_length=250)
tag = models.CharField(max_length=250,null=True)
remarks = models.TextField(null=True)
gstcode = models.ForeignKey(
GSTCode,related_name='product',null=True)
unit_of_measurement = models.ForeignKey(
UnitOfMeasurement,on_delete=models.DO_nothing,related_name='category')
# picture
objects=ProductManager()
# select the product where active=true & quantity<0
def __str__(self):
return self.name
那么我该如何编码我的序列化器和视图,以便从产品型号和返回返回名称,类别,品牌,型号,标签的数据类别模型中的em>名称以及 UnitOfMeasurement模型中的名称和 measurement_type ?
解决方法
您可以从序列化器的模型中选择字段,如 UnitOfMeasurement 的示例代码所示,并将此序列化器用于get(retrieve)请求。
class UnitOfMeasurementSerializer(serializers.ModelSerializer):
class Meta:
model = UnitOfMeasurement
fields = ["name","measurement_type"]
您可以对其余模型执行相同的操作。 视图取决于您的用例。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。