【问题标题】:Django - How to get current url from template and replace parameter value or delete parameter and append afterDjango - 如何从模板中获取当前 url 并替换参数值或删除参数并在之后追加
【发布时间】:2020-08-24 16:07:10
【问题描述】:
在我的 django 模板中,我需要获取当前 url 并修改参数值或添加此参数(如果不存在)。
这是一个网址示例:/articles/pdf?perpage=2&page=2
目前我只知道如何检索整个网址:
{{ request.get_full_path }}
但我需要做的是能够创建一个新的 url,我将其用作 href,如果“page”参数存在,我更改它的值,或者如果不存在,我将此参数附加到网址。
编辑:没人知道怎么做就这么难吗?....
【问题讨论】:
标签:
python
django
django-templates
【解决方案1】:
因为这似乎是一个难题......我必须找到解决方法来实现它。
我剪切了所有形式的“page”参数,然后在 href 中附加新的参数:
{% define request.GET.page as page_num %}
{% define "?page="|add:page_num as page_first_param %}
{% define "&page="|add:page_num as page_next_param %}
{% define request.get_full_path|cut:page_first_param|cut:page_next_param as new_partial_url %}
{% if '?' in new_partial_url %} {% define "&" as p %} {% else %} {% define "?" as p %} {% endif %}
{% define new_partial_url|add:p as new_full_url %}
<a class="page-link" href="{{ new_full_url }}page={{ items.previous_page_number}}">
« Précédent</a>