在表单ChoiceField中选择ForeignKey字段

时间:2009-11-04 15:17:17

标签: django forms

我的模型中有外键输入,我想用于我的选择区域...现在我不太确定如何解决这个问题....我可以找到我的模型文件{{3}基本上我想要一个车辆制造,型号,年份,车身风格,外观颜色和传输的选择领域。由于所有这些都以同样的方式工作,我只需要有人指出我正确的方向,然后我就完全了。

class Model(models.Model):
   model = models.CharField(max_length=15, blank=False)
   manufacturer = models.ForeignKey(Manufacturer)
   date_added = models.DateField()
   def __unicode__(self):
       name = ''+str(self.manufacturer)+" "+str(self.model)
       return name 

class BodyStyle(models.Model):
   doors = models.PositiveSmallIntegerField()
   passengers = models.PositiveSmallIntegerField()
   style = models.CharField(max_length=15, blank=False)
   def __unicode__(self):
       name = str(self.doors)+" Door / "+str(self.passengers)+" Passenger / "+str(self.style)
       return name 

1 个答案:

答案 0 :(得分:17)

也许您正在寻找ModelChoiceField

要使用它,你会写一些类似的东西:

class VehicleForm(forms.Form):
   series = ModelChoiceField(queryset=Series.objects.all()) # Or whatever query you'd like

然后对其他字段执行相同操作。

当然,您可能会使用ModelForm,但这只是一个例子。这就是你要找的东西吗?