如何从Django用户外键获取项目

时间:2019-02-07 17:18:16

标签: django

如何从附加到用户帐户的Django外键中检索项目?

class product(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    product_title =  models.CharField(max_length=100, blank=True)
    product_price =  models.CharField(max_length=30, blank=True)
    product_image =  models.CharField(max_length=100, blank=True)

我调查了其他堆栈溢出问题,并尝试了request.user.product.product_title,但仅返回属性错误,“ User”对象没有属性“ product”。我也尝试了request.user.product_set.all(),但这只是返回了这个查询集:

<QuerySet [<product: product object (2)>, <product: product object (3)>, <product: product object (4)>]>

我也尝试了其他一些方法,但是我不记得那些东西到底是什么以及错误。

1 个答案:

答案 0 :(得分:1)

执行request.user.product_set.all()时得到的查询集是所有具有该用户作为FK的产品。现在,您只需要使用它即可。

编辑1

for product in request.user.product_set.all():
    print(product.title)