1

PythonでFormwizardの次のdjangoコードを取得しました。まず、次の 2 つの形式があります。

 class AuthenticationForm(forms.Form):
      FirstName = forms.CharField(max_length=500)
      LastName = forms.CharField(max_length=500)

 class SurveyForm(forms.Form):
      def __init__(self, *args, **kwargs):
       super(SurveyForm, self).__init__(*args, **kwargs)
       for question in choiceValue:
                self.fields[question] =  forms.ChoiceField(choices=CHOICES,widget=RadioSelect())

class ContactWizard(FormWizard):
choiceValue = []

def get_template(self,step): 
    if step == 0:
        return 'wizard0.html'
    if step == 1:
        return 'wizard1.html'

def process_step(self, request, form, step):
    if (step == 0):      
        fullName=""      
        if request.method== 'POST':               
            if form.is_valid():  
                FirstName = form.cleaned_data['FirstName']
                LastName = form.cleaned_data['LastName']
                FirstNameU=FirstName.capitalize()
                LastNameU=LastName.capitalize()
                fullName=FirstNameU+" "+LastNameU
                personURIfn=GraphR.triples((None,FOAF_NS['givenName'],Literal(FirstNameU)))
                personURIln=GraphR.triples((None,FOAF_NS['familyName'],Literal(LastNameU)))          
                for purifn in personURIfn:
                    purifnStr='%s' %purifn[0]
                    for puriln in personURIln:     
                        purilnStr='%s' %puriln[0]
                        if purifnStr == purilnStr:               
                            personURI=purifnStr
                            friendKnows=GraphR.triples((URIRef(purifnStr),FOAF_NS['knows'],None))
                            for fk in friendKnows: #and scn1 not in epuriList1:            
                                fkStr='%s' %fk[2]
                                choiceValue.append(fkStr)
                return render_to_response('wizard1.html', RequestContext(request))


def done(self, request, form_list):
    print 'run'

タイトルに記載されているエラーが発生する理由がわかりません。さらに、Google も特定のヘルプを提供していません。どなたか原因を推測してください。Done メソッドで何か問題が発生していると思われますが、よくわかりません。

ありがとう。

4

1 に答える 1

7

process_stepif がステップ 0 でない場合、または POST ではなく GET である場合、またはフォームが有効でない場合に何が起こるかを考えてみてください。これらの場合、何が返されますか?

于 2012-09-16T21:58:54.730 に答える