Python 我可以为django SessionWizard使用相同的表单两次吗?
我正在尝试为行程创建过程创建SessionWizardView。行程可能有一段(单程)或两段(往返)。每个航段都有相似的模式,所以我想对步骤0和步骤1使用相同的形式,条件是当航班往返时只使用步骤1 我遇到的问题是,我的“提交”按钮不断地反复加载步骤0,而不是像往返航班那样继续执行步骤1。(我正在根据之前在get_form_initial()覆盖中请求的每条航段的行程信息预填充每个表单)。我的表单为第一段正确填充,它只是无限期地在每次提交时填充第一段数据 我可以做出两种完全相同的形式,但这似乎是拙劣的做法。稍微好一点,我可以让回程表单只继承出站行程表单,而不做任何更改-除非有更好的解决方案,否则我将尝试下一步 但是,我真的想知道是否有一种方法可以使用相同的表单两次 在my url.py中:Python 我可以为django SessionWizard使用相同的表单两次吗?,python,django,forms,django-formwizard,Python,Django,Forms,Django Formwizard,我正在尝试为行程创建过程创建SessionWizardView。行程可能有一段(单程)或两段(往返)。每个航段都有相似的模式,所以我想对步骤0和步骤1使用相同的形式,条件是当航班往返时只使用步骤1 我遇到的问题是,我的“提交”按钮不断地反复加载步骤0,而不是像往返航班那样继续执行步骤1。(我正在根据之前在get_form_initial()覆盖中请求的每条航段的行程信息预填充每个表单)。我的表单为第一段正确填充,它只是无限期地在每次提交时填充第一段数据 我可以做出两种完全相同的形式,但这似乎是拙
wizard_forms = [TripCreationForm,TripCreationForm]
urlpatterns = patterns('',
url(r'^trip/wizard/(?P<pk>\d+)$',
views.CreateTripSetView.as_view(wizard_forms,
condition_dict= {'1':show_return_trip_form}), name='admin_add_tripset')
在forms.py中:
class TripCreationForm
#field defs ex.
request_id = forms.IntegerField()
#etc.
def __init__(self, initial, *args, **kwargs):
object_data = {}
object_data['request_id'] = initial['request_id']
#etc.
super(AnywhereFlightCreationForm, self).__init__(initial=object_data, *args, **kwargs)
编辑:
到目前为止,我已经能够使用TripCreationForm的两个子类完成这项工作,但没有同时使用TripCreationForm
提前谢谢 向导需要将它们标识为单独的步骤。也许这样行吗
wizard_forms = [
("form1", TripCreationForm),
("form2", TripCreationForm),
]
向导需要将它们标识为单独的步骤。也许这样行吗
wizard_forms = [
("form1", TripCreationForm),
("form2", TripCreationForm),
]
不幸的是,它似乎不起作用,在那个场景中它直接跳到form2。不幸的是,它似乎不起作用,在那个场景中它直接跳到form2。