DRF如何通过外键公司过滤用户和产品?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DRF如何通过外键公司过滤用户和产品?相关的知识,希望对你有一定的参考价值。
如何通过外键(公司)来过滤,只获取得到相同公司和授权用户的产品? 想法是用户只查看自己所在公司的信息。
模型。
class User(AbstractBaseUser):
first_name = models.CharField(max_length=254)
company = models.ForeignKey(Company, on_delete=models.CASCADE,
blank=True, null=True)
class Product(models.Model):
name = models.CharField(max_length=255)
company = models.ForeignKey(Company, on_delete=models.CASCADE,
blank=True, null=True)
串行器
class ProductSerializers(serializers.ModelSerializer):
class Meta:
model = Product
fields = '__all__'
观点
class ProductViewSet(ModelViewSet):
serializer_class = ProductSerializers
queryset = Product.objects.all()
permission_classes = [IsAuthenticated]
答案
如果我理解正确的话,你想根据当前用户的公司来过滤产品?
类似于:
products = Product.objects.filter(company=user.company)
以上是关于DRF如何通过外键公司过滤用户和产品?的主要内容,如果未能解决你的问题,请参考以下文章