【问题标题】:Carry previous parameters over to next django template request将先前的参数传递到下一个 django 模板请求
【发布时间】:2012-08-20 23:48:23
【问题描述】:

我有一个项目,它按特定顺序列出了许多项目。此顺序由通过参数传递的两个变量确定:

<a class="btn btn-info" href={{ request.path }}?key={{ key }}&orientation={{ orientation }}><i class="icon-wrench icon-large"></i></a>

“key”为item特征,“orientation”为升序或降序。 python 代码处理传递回模板的项目的顺序。

我有另一个控件需要通过时间限制:

<a href={{ request.path }}?time={{ time }}>{{ value }}</a>

其中时间是分钟数。

这里的问题是,如果用户点击排序链接,然后点击时间链接,{{ request.path }} 将只包含“正确路径”,而不包含已添加的附加参数。

第一次排序点击会产生类似

/list/items/?key=importance&orientation=asc

但是第二次点击会返回

/list/items/?time=30

我想返回的地方

/list/items/?key=importance&orientation=asc&time=30

现在我可以改用这个了

<a href={{ request.get_full_path }}?time={{ time }}>{{ value }}</a>

但是如果多次点击时间链接,我可能会得到这样的结果:

/list/items/?key=importance&orientation=asc&time=30&time=60&time=15

当我真的想覆盖该类型的原始参数时,同一类型的多个参数。

我该如何解决这个问题。我想保留所有不属于点击链接传递的类型的参数。

【问题讨论】:

    标签: python django django-templates parameter-passing


    【解决方案1】:

    您可以使用这个 sn-p http://djangosnippets.org/snippets/2105/。示例:

    {% load add_get_parameter %}
    <a href="{% add_get_paramater param1='const_value',param2=variable_in_context %}">
        Link with modified params
    </a>
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-05
    • 2010-12-26
    • 2018-03-11
    • 2015-09-07
    • 2017-05-17
    相关资源
    最近更新 更多