DJANGO-模型中的默认过滤器



我有三种型号:

class Product(models.Model):
name = models.TextField()
class Company(models.Model):
name = models.TextField()
users = models.ManyToManyField('auth.User')
class Sales(models.Model):
product= models.ForeignKey(Product)
company= models.ForeignKey(Company)
seller = models.ForeignKey('auth.User')

我的目标是显示request.user公司销售的所有产品的列表,所以在我看来我这样做了:

Enterprise= Company.objects.filter(users=request.user)[0]
Products_sold = Sales.objects.filter(company=Enterprise)

但由于我有很多观点,我想知道是否有一种方法可以直接在模型中实现它?

您的用户应该具有company_set:

Products_sold = Sales.objects.filter(request.user.company_set.all()[0])

最新更新