[英]Multi choice form field in Django
我在app-engine-path上開發應用程序。 我想用選擇題(可以接受的用戶語言)制作表格。 代碼如下:
語言設定:
settings.LANGUAGES = ((u"cs", u"Čeština"), (u"en", u"English"))
表格模型:
class UserForm(forms.ModelForm):
first_name = forms.CharField(max_length=100)
last_name = forms.CharField(max_length=100)
languages = forms.MultipleChoiceField(widget=forms.CheckboxSelectMultiple,
choices=settings.LANGUAGES)
表單顯示正常(所有語言都有復選框。ID,NAME可以。)但是,如果我為用戶保存了一些語言,則這些語言不會復選框。
用戶模型如下所示
class User(User):
#...
languages = db.StringListProperty()
#...
並查看:
def edit_profile(request):
user = request.user
if request.method == 'POST':
form = UserForm(request.POST)
if form.is_valid():
# ...
else:
form = UserForm(instance=user)
data = {"user":user, "form": form}
return render_to_response(request, 'user_profile/user_profile.html', data)
我是這樣解決的:
some_view(request):
...
form = UserForm(instance=user, initial={"languages":user.languages})
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.