2012年1月23日月曜日

DjangoでformのForeignKey選択設定

Djangoでmodelを与えてformを作成すると、勝手にForeignKeyはselectionをoptionで用意してくれる
tutorialの
class Choice(models.Model):
    poll = models.ForeignKey(Poll)
    choice = models.CharField(max_length=200)
    votes = models.IntegerField() 
 なら、pollはclass Select(Widget)でoptionに選択可能なqueryの結果が表示される。
でもここではその中でも特定の要素を持つものに絞りたい。
form.fields['poll'].queryset = Poll.objects.filter(hoge=fuga) 
 
さらに、特定の値をデフォルトにするには、 
form.fields['poll'].initial = Poll.objects.get(pk=fuga) 

0 件のコメント:

コメントを投稿