Google App Engine用フレームワークKayのMultiChoiceFieldの選択肢を実行時に設定する

Google App Engine用フレームワークKayのMultiChoiceFieldの選択肢を実行時に設定する」より。

GoogleAppEngine用フレームワークKayのMultiChoiceFieldの選択肢を実行時に設定する方法。

FormのMultiChoiceFieldのchoices属性の値を変更します。

myapp/views.py

from kay.utils import forms
class MyForm(forms.Form):
message = forms.TextField(required=True)
flags = forms.MultiChoiceField(choices=[1,2,3])

def index(request):
form = MyForm({'message':u'メッセージ', 'flags': [1,3]}) #フォームに初期値を設定
form.flags.choices = [1,2,3,4,5] #選択肢を変更
return render_to_response('myapp/index.html',
{'form':form.as_widget()})