米国の州を表す MultipleChoiceField があり、フォームに GET リクエストを渡すと、次のような?state=AL%2CAK
エラーが発生します。
Select a valid choice. AL,AK is not one of the available choices.
ただし、これらの値はフォーム フィールドに正しくレンダリングされるため、フィールドの選択肢に確実にリストされます。
値をリストに変換するために、フォームにカスタムの clean_state() メソッドを指定しようとしましたが、効果がありません。clean_data['state'] を印刷すると、request.GET からのデータで呼び出されていないことが示されているようです。
このエラーの原因は何ですか?
from django import forms
class MyForm(forms.Form):
state = forms.MultipleChoiceField(
required=False,
choices=[('AL','Alabama'),('AK','Alaska')],
)