我想获取一个 JSON 字典,其中包含所有产品名称,包括相应的公司名称(请参阅“我想要的输出”部分)。我的搜索/过滤功能将数字返回为公司,这是错误的(请参阅“我有的输出”部分)。谢谢!
产品型号
class Product(models.Model):
name = models.CharField(max_length=150)
company = models.ForeignKey(Company, on_delete=models.CASCADE)
公司模式
class Company(models.Model):
name = models.CharField(max_length=150)
搜索/过滤功能
product_names = Product.objects.filter(name__startswith=request.GET.get('query')).values('name', 'company')
我有输出
{"products": [{"name": "bla 2", "company": 3}, {"name": "bla 1", "company": 10}]}
我想要的输出
{"products": [{"name": "bla 2", "company": "apple"}, {"name": "bla 1", "company": "samsung"}]}
最佳答案
这就是解决我的问题的方法:
product_names = Product.objects.filter(name__startswith=request.GET.get('query'))
.values('name', 'company__name'))
关于python - 如何在 Django 中的产品过滤功能中获取公司名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54616774/