форма с CheckboxSelectMultiple не проверяет - PullRequest
19 голосов
/ 14 апреля 2009

У меня есть форма с полем выбора, которое использует виджет CheckboxSelectMultiple:

foo = forms.ChoiceField(widget=forms.CheckboxSelectMultiple,
                        choices=(
                                  ("1", "ONE"),
                                  ("2", "TWO"),
                                 ))

Форма хорошо отображается с двумя флажками, но не проверяется.

Если я установил оба флажка, я получаю сообщение об ошибке: выберите правильный выбор. [u'1 ', u'2'] не является одним из доступных вариантов

Выбор одного флажка также не работает, он дает мне: Выберите правильный выбор. [u'1 '] не является одним из доступных вариантов.

Что здесь происходит?

Ответы [ 2 ]

30 голосов
/ 14 апреля 2009

Если вы сделаете поле формами.MultipleChoiceField вместо форм.ChoiceField будет работать лучше.

5 голосов
/ 03 августа 2010

Пусть это будет полезно для вас

num_choices = ( ("1", "ONE"), ("2", "TWO"), ("3", "Three"), ("4", "Four"))

num_list = forms.MultipleChoiceField(choices=num_choices, required=True, widget=forms.CheckboxSelectMultiple(), label='Select No', initial=("1", "2"))

Если вы хотите передать объект ORM напрямую, вы можете попробовать следующее

num_list = forms.ModelMultipleChoiceField(Numbers.objects.all(), required=True, widget=forms.CheckboxSelectMultiple(), label='Select No')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...