我想構建一個Django表單嚮導來允許人們註冊一個 事件。我可以通過表單嚮導來查看done
方法中的數據。 問題是我還需要event_id
也通過了。如何通過表單嚮導從012 url轉到done
? event_id
?簡單的例子?通過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 2012-08-08 00:44:59
@codingJoe通過參數或'request.GET'中的'id'獲取'seat_instance'和'another_instance'的東西。 – Rohan 2012-08-08 04:06:35
對不起,我不明白。什麼是'seat_instance'?以及如何將'id'放在那裏?那麼如何在完成的方法中使用'id'? – codingJoe 2012-08-09 02:12:15