2011-05-08 10 views
35

라디오 나 선택 버튼을 포함하도록 forms.py 파일을 설정하는 데 어려움이 있습니다. 나는 문서를 보았지만 정확한 구문을 적용하는 행운이 없었다. 여기 django의 라디오 버튼 양식

내가 현재 forms.py에있는 것입니다 -

from django import forms 

class PictureForm(forms.Form): 
    like = forms.ChoiceField(???) 
    name = forms.CharField() 
    email = forms.EmailField() 
    message = forms.CharField() 

그리고 내 views.py - 내가 '값 1'의 라디오 버튼 세트를 설정하는 방법

from app.forms import PictureForm 

def index2(request): 
    if request.method == 'POST': 
     form = PictureForm(request.POST) 
     if form.is_valid(): 
      cd = form.cleaned_data 
      Picture.objects.create(like=cd['like'], name=cd['name'], email=cd['email'], message=cd['message']) 
      return HttpResponseRedirect ('/thanks/') 
    else: 
     form = PictureForm() 
    return render_to_response('index2.html', {'form':form},) 

' value2 ','value3 '? 선택 드롭 다운으로이를 수행하는 방법은 무엇입니까? 감사합니다.

답변

69

양식 클래스를 작성할 때 필드의 위젯과 선택 항목을 설정하십시오.

CHOICES=[('select1','select 1'), 
     ('select2','select 2')] 

like = forms.ChoiceField(choices=CHOICES, widget=forms.RadioSelect()) 

기본 위젯은 드롭 다운 선택입니다.

+13

(튜플)의 첫 번째 항목은 값이고 두 번째 항목은 라디오 버튼에 표시 할 레이블입니다. – Martlark

+5

위젯을 호출해서는 안되며 대신 [widget = forms.RadioSelect'로 전달해야합니다. [공식 문서보기] (https://docs.djangoproject.com/ko/1.8/ref/forms/widgets/#widgets) -inititing-from-select-widget) – Pynchia