1
Django/Python中的新手。我正在使用django表單來選擇用戶。 首先查詢集根據group__name過濾,然後表單使用複選框小部件生成HTML。這是基礎和良好的工作。 我想HTML顯示'User.last_name User.email'。除了複選框外,不僅有'User.username'。 是否有可能(也很容易)改變這個小部件的默認行爲?django表單部件checkboxselectmultiple如何呈現User.last_name
# model is User
# forms
class SelMembersForm(forms.Form):
qs = User.objects.filter(groups__name='any_group_name')
picked = forms.ModelMultipleChoiceField(qs, widget=forms.CheckboxSelectMultiple())
# views
def members_select(request):
if request.method == 'POST':
form = SelMembersForm(request.POST)
if form.is_valid():
picked = form.cleaned_data.get('picked')
else:
form = SelMembersForm
return render_to_response('staff/selmembers.html', {'form':form },
context_instance=RequestContext(request))
# template
<form method='post'> {% csrf_token %}
{{ form.as_p }}
<input type='submit' value='submit'>
</form>