在Django表单中访问变量

在Django表单中访问变量,django,django-forms,django-formwizard,Django,Django Forms,Django Formwizard,我遇到的问题是如何在表单中显示一些附加文本, 特别是上一步的值。要点是向用户显示一条消息,例如“您已经选择了{{value_from_step_0}}作为您的初学者,现在选择一道主菜。” 我可以从步骤0获得该值,如下所示: class MenuWizard(SessionWizardView): def get_form_kwargs(self, step=None): kwargs = {} if step == '1': sta

我遇到的问题是如何在表单中显示一些附加文本, 特别是上一步的值。要点是向用户显示一条消息,例如“您已经选择了{{value_from_step_0}}作为您的初学者,现在选择一道主菜。”

我可以从步骤0获得该值,如下所示:

class MenuWizard(SessionWizardView):
    def get_form_kwargs(self, step=None):
        kwargs = {}
        if step == '1':
            starter = self.get_cleaned_data_for_step('0')['starter']
            kwargs.update({'starter': starter})

class MainCourseForm(forms.Form):
    def __init__(self, *args, **kwargs):
        starter = kwargs.pop('starter')
        print "{0} chosen".format(starter) # This works
        super(DomainForm, self).__init__(*args, **kwargs)
        # What next?

如果我没有弹出“starter”值,那么超级调用将失败。但是,如何将该值输入到相关模板中?大概我需要在init中做一些进一步的操作,或者重写其他操作,但是什么呢?

首先,请注意1.7不受支持,表单向导在1.8中从Django中删除,现在位于第三方formtools库中


这实际上不是表单的工作,而是视图的工作。SessionWizardView是一个标准的基于类的视图,与大多数基于类的视图一样,它允许您覆盖
get\u context\u data
以向模板内容添加元素。请参阅,其中有一个使用
self.steps.current
检查当前步骤名称的示例。

谢谢,这就解决了模板问题。事实上,我将1.8与formtools一起使用,但在遵循该文档时遇到了问题。