Python 特定主键django窗体的外键
我有班车、司机和汽车Python 特定主键django窗体的外键,python,ajax,django,django-forms,Python,Ajax,Django,Django Forms,我有班车、司机和汽车 class Company(models.Model): title = models.CharField(max_length=256) ... Class Car(models.Model): ... company = ForeignKey('Company') class Driver(models.Model): ... company = ForeignKey('Company') company_car = OneToOneField('Car')
class Company(models.Model):
title = models.CharField(max_length=256)
...
Class Car(models.Model):
...
company = ForeignKey('Company')
class Driver(models.Model):
...
company = ForeignKey('Company')
company_car = OneToOneField('Car')
此外,我还有用于创建和更新驱动程序的GenericView,以及通用表单
我需要的形式,当用户选择公司,公司车下拉菜单只包括外键汽车对象为这家公司。我知道object_set特性,这是AJAX可能采用的技巧。但是我不知道它是如何在表单字段上实现的,您可以为ModelChoiceField指定一个查询集。您尚未提交表单,但它可能看起来像这样:
class MyForm(ModelForm):
def __init__(self, *args, **kwargs):
self.fields['car'] = ModelChoiceField(
queryset = Car.objects.filter(company=company)
)
文档位于此处:在表单字段上,可以为ModelChoiceField指定查询集。您尚未提交表单,但它可能看起来像这样:
class MyForm(ModelForm):
def __init__(self, *args, **kwargs):
self.fields['car'] = ModelChoiceField(
queryset = Car.objects.filter(company=company)
)
文档在这里:你能为我的情况写下这个例子吗?我不清楚我已经编辑了我的答案,但是这个.thx上的文档很清楚,但是我现在和以前的解决方法的问题是我有一个错误:“MyForm”对象没有属性“company”,你能为我的情况写这个例子吗?我不清楚我已经编辑了我的答案,但是这个.thx上的文档很清楚,但是我现在和以前的解决方法的问题是我有一个错误:“MyForm”对象没有属性“company”