Bri*_*n D 111 django django-templates
我想将请求参数添加到{% url %}
标签中,例如?office=foobar
.
这可能吗?我找不到任何东西.
Dan*_*man 156
不,因为GET参数不是URL的一部分.
只需将它们添加到最后:
<a href="{% url myview %}?office=foobar">
Run Code Online (Sandbox Code Playgroud)
适用于Django 1.5+
<a href="{% url 'myview' %}?office=foobar">
Run Code Online (Sandbox Code Playgroud)
eri*_*eri 30
一种将当前参数与新参数混淆的方法:
{% url 'order_list' %}?office=foobar&{{ request.GET.urlencode }}
Run Code Online (Sandbox Code Playgroud)
将您的设置修改为具有请求变量:
from django.conf.global_settings import TEMPLATE_CONTEXT_PROCESSORS as TCP
TEMPLATE_CONTEXT_PROCESSORS = TCP + (
'django.core.context_processors.request',
)
Run Code Online (Sandbox Code Playgroud)
Cir*_*四事件 22
使用urlencode
如果该参数是一个变量
<a href="{% url 'myview' %}?office={{ some_var | urlencode }}">
Run Code Online (Sandbox Code Playgroud)
或者像空格这样的特殊字符可能会破坏您的URL.
文档url
没有提到url
直接使用的方法:https://docs.djangoproject.com/en/1.9/ref/templates/builtins/#url
首先,一个愚蠢的回答:
{% url my-view-name %}?office=foobar
Run Code Online (Sandbox Code Playgroud)
一个严肃的回答:不,你不能.Django的URL解析器仅匹配URL的路径部分,因此{% url %}
标记只能反转URL的那部分.
归档时间: |
|
查看次数: |
59825 次 |
最近记录: |