【问题标题】:How to maintain form parameters when new url is called调用新url时如何维护表单参数
【发布时间】:2018-03-06 04:18:02
【问题描述】:

我有一个如下图所示的表格和第二张图所示的一组导航药丸。当我单击 navpill 时,它会调用一个以“图表”或“表格”结尾的 url。每当我按下 navpill 时,尽管表单中的所有值都被清除为原始模板。我需要他们留下来,所以当我从图表切换到表格时,我会得到相同的信息。即,如果选择了一种基金类型,我希望它仍然是他们的,如果我之前在图表上点击表格时。我尝试使用“GET”:

 min_year = request.GET.get('year_min', None)
if not min_year:
    min_year = '2013'

但这只有在我提交表单时才有效。只要我点击其中一个值,它就会重置。

这是“开始年份”框的 html:

<h6>Start Year</h6>
            <div class="form-group">
                {{form.year_min|attr:"class:form-control"}}
            </div>

这是表格:

    CHOICES = (
    ('1998', '1998'),
    ('1999', '1999'),
    ('2001', '2001'),
    ('2002', '2002'),
    ('2003', '2003'),
    ('2004', '2004'),
    ('2005', '2005'),
    ('2006', '2006'),
    ('2007', '2007'),
    ('2008', '2008'),
    ('2009', '2009'),
    ('2010', '2010'),
    ('2011', '2011'),
    ('2012', '2012'),
    ('2013', '2013'),
    ('2014', '2014'),
    ('2015', '2015'),
    ('2016', '2016'),
    ('2017', '2017'),
    ('2018', '2018'),
)

year_min = forms.ChoiceField(choices=CHOICES, required=True, label='Start Year')

图片:

【问题讨论】:

  • 发布完整代码(view.py),表单提交后,重定向到下一个模板时,您必须通过请求传递表单数据

标签: python django forms url


【解决方案1】:

看起来您需要使用 Ajax。当您通过更改页面的 URL(或单击普通链接)来执行 GET 时,您实际上是在离开该页面。即使在这种情况下,也应该有办法保留表单数据,但我建议你看看here

【讨论】:

    猜你喜欢
    • 2013-01-22
    • 1970-01-01
    • 2011-10-09
    • 1970-01-01
    • 2015-08-07
    • 2011-07-16
    • 2011-05-13
    • 1970-01-01
    相关资源
    最近更新 更多