0

動的な選択フィールドがあります。

PASSENGER_TYPE_CHOICE = [(p.id, p.cabin.name) for p in flight.passengertype_set.all() if p.availableSeats > 0]
self.fields['passenger_type'] = forms.ChoiceField(label=str(self.flight.code)+" Seat Type", initial=PASSENGER_TYPE_CHOICE[0][0],choices=PASSENGER_TYPE_CHOICE)

初期値を設定していることに注意してください。しかし、このフォームの送信ボタンをクリックすると、「このフィールドは必須です」と表示されます。選択フィールドをクリックしてオプションを選択すると、機能します。しかし、初期値がある場合でも、本当に最初に選択する必要がありますか?助けてください?

4

1 に答える 1

3

ドキュメントには次のように記載されています。動的な初期データを指定するには、Form.initial パラメータを参照してください。

したがって、これでうまくいくはずです:

form = MyPassengerForm(initial = {'passenger_type': PASSENGER_TYPE_CHOICE[0][0]})
于 2011-02-28T07:19:18.740 に答える