사람들이 이벤트에 등록 할 수 있도록 django 양식 마법사를 빌드하려고합니다. 양식 마법사를 통해 done
방법으로 데이터를 볼 수 있습니다. 문제는 또한 event_id
도 전달해야합니다. 양식 마법사를 통해 URL에서 event_id
을 어떻게 얻고 done
에 넣으시겠습니까? 간단한 예?Django FormWizard를 통해 데이터 전달하기
------- urls.py ---------
named_register_forms2 = (
('basicdata', SeatsForm),
('form2', AnotherForm),
)
urlpatterns = patterns('',
url(r'^register/(?P<event_id>\d+)/$', register_wizard, name='register_step'),
)
------ forms.py -----------
class SeatsForm(forms.ModelForm):
class Meta:
model = MyModel
fields = [ 'last_name', 'first_name', 'address1', 'address2',
'city', 'state', 'zipcode', 'phone_number', 'email']
def __init__(self, *args, **kwargs):
super(SeatsForm, self).__init__(*args, **kwargs)
class RegisterWizard(SessionWizardView):
#storage_name = 'formtools.wizard.storage.session.SessionStorage'
template_name = 'wizard_form.html'
def done(self, form_list, **kwargs):
data = {}
for form in form_list:
data.update(form.cleaned_data)
print data
# I need event_id right here. How to get it?
return render_to_response('done.html', {
'form_data': [form.cleaned_data for form in form_list],
})
'wrapper_view'를 어떤 파일에 넣고 어떻게 호출합니까? – codingJoe
@codingJoe는 매개 변수 또는'request.GET'에서'id'를 사용하여'seats_instance'와'another_instance'를 얻습니다. – Rohan
죄송합니다. 이해가 가지 않습니다. 'seats_instance' 란 무엇입니까? 어떻게 거기에'id '를 넣을 수 있습니까? 그렇다면 완성 된 메소드에서'id '를 어떻게 얻습니까? – codingJoe