我有一個Item對象與另一個對象Option有許多關係。我像這樣從Item對象創建一個模型表單;如何覆蓋django模型以實現自定義行爲
class Item(models.Model):
category = models.ForeignKey(Category)
name = models.CharField(max_length=200)
price = models.DecimalField(max_digits=9, decimal_places=2, blank=True, null=True)
options = models.ManyToManyField(Option)
class OptionForm(ModelForm):
options = forms.ChoiceField(widget=forms.RadioSelect())
class Meta:
model = Item
fields = ('options',)
當我呈現在模板的形式,它呈現爲Item
對象(預期的行爲),即使是那些不被特定項目創建的所有可用options
。我希望能夠加載由用戶選擇的特定項目定義的options
。我如何重寫表單來實現這樣的行爲。例如,如果沒有表單,我可以通過它的id呈現Items
自己的Options
。 item = Item.objects.get(pk=id)
你能澄清你的問題嗎?你想動態地實現一個用戶想要的選項定義的表單嗎?或者只在用戶定義的模型中放置一個特定的選項? – agconti
我認爲這個問題很好@conconti,當創建一個Item時,我還指定了屬於那個Item的'options'。 –
爲什麼要限制選項? – agconti