Je construis une application sur App Engine et je veux faire un champ de formulaire avec plusieurs choix.
Voici ma forme (il utilise django.newforms du moteur app sdk (django 0,96)):Comment faire un champ de formulaire de choix multiples sur le moteur app
from google.appengine.ext.db import djangoforms
from django import newforms
class KeywordForm(djangoforms.ModelForm):
class Meta:
model = Keyword
exclude = ['site', 'created_at', 'last_update']
choices = [ (1, 'value1'), (2, 'value2'), (3, 'value3'), (4, 'value4') ]
server = newforms.fields.MultipleChoiceField(choices = choices)
Le problème est le suivant: lorsque je soumets la forme (avec une ou plusieurs valeurs sélectionnées) J'ai cette erreur de validation: "Entrez une liste de valeurs"
Je ne comprends pas pourquoi ... une aide sur ce problème sera très appréciée.
Merci! :)
Modifier (informations supplémentaires):
Voici le code de validation de formulaire:
form = forms.KeywordForm(data=self.request.POST)
if form.is_valid():
...
self.request.POST:
UnicodeMultiDict([(u'keyword', u'test'), (u'server[]', u'1'), (u'server[]', u'2')])
Vous pouvez tout simplement passer self.request.POST.items(). –
Merci beaucoup Nick, c'est beaucoup plus élégant! – Mat
@Nick Johnson J'ai le même problème. Voulez-vous s'il vous plaît aider? Voici ma forme http://dpaste.org/a8FZc/ merci – Kulbir