外键的过滤查询集[关闭]

Posted

技术标签:

【中文标题】外键的过滤查询集[关闭]【英文标题】:filterd queryset for foreginkey [closed] 【发布时间】:2019-09-06 07:59:31 【问题描述】:

员工有两种类型的销售和普通员工, 在销售表格中,我只想显示销售员工

【问题讨论】:

我们真的需要看看到目前为止您已经提出了哪些代码才能为您提供帮助。除此之外,这甚至不是您应该在这里提问的方式。请查看帮助部分***.com/help/dont-ask 【参考方案1】:
def __init__(self, user, *args, **kwargs):
    super(BranchesMasterForm, self).__init__(*args, **kwargs)
    self.fields['CompanyName'].queryset = BranchesMaster.objects.filter(user=user)

【讨论】:

【参考方案2】:

你必须在models.py中创建两个类

class Sales(models.model):
    user = models.ForiegnKey(User , on_delete= models.CASCADE)
     add more attributes if u want  

class Employee(models.model):
    user = models.ForiegnKey(User , on_delete= models.CASCADE)
     add more attributes if u want 

然后创建一个名为 forms.py 的新文件

   class SalesForm(forms.Modelform):
       class Meta:
       model = Sales
       fields = [ 'u can insert the fields which u want to show in ur form  ' ]

类似地,您为您的员工制作表单类

NOTE:--
u have to import ur model in your form.py module
and do import--- from django.contrib.auth.models import User
 in ur models.py file  

【讨论】:

以上是关于外键的过滤查询集[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

Django反向过滤查询集外键示例不起作用

Django admin 查询集通过外键向后关系过滤

Django过滤与其他模型的外键相关的模型的查询集?

从列或到外键的Laravel过滤器

django queryset过滤外键

使用带有外键的 Q 对象定义 django 查询集