[英]Django form - filter foreignkey in model
假设我们有2个模型:
class Entry(models.Model):
number = models.IntegerField(blank=True, null=True, verbose_name="#")
product = models.ForeignKey(Application, blank=True, null=True, verbose_name='Application')
class Application(models.Model):
name = models.CharField(max_number=100)
defaultCalendar = models.ForeignKey(Calendar)
class Calendar(models.Model):
name = models.CharField(max_number=100)
和形式:
class EntryForm(ModelForm):
class Meta:
model = Entry
fields = {'product ', 'number'}
1)在文档中,我们可以看到使用fields
可以更改模型的顺序,但是在此示例中,它不起作用:(
2)有什么方法可以过滤我的表格中的产品? 在模型视图中,我可以这样
def somefunction(request, val1, val2):
products = Application.objects.filter(defaultCalendar=request.user.get_profile().defaultCalendar)
get_profile
是一个返回用户个人资料的函数。
无论如何在Form中执行此操作? filter参数必须与执行该功能的用户连接。
提前致谢
1)它不起作用,因为“字段”应该是一个列表:
fields = ['product ', 'number', ]
2)
您可以使用:
form.fields["product"].queryset = your_queryset
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.