같은 {% url %}
태그에 요청 매개 변수를 추가 하고 싶습니다 ?office=foobar
.
이게 가능해? 아무것도 찾을 수 없습니다.
답변
아니요, GET 매개 변수는 URL의 일부가 아니기 때문입니다.
끝에 추가하기 만하면됩니다.
<a href="{% url myview %}?office=foobar">
Django 1.5+ 용
<a href="{% url 'myview' %}?office=foobar">
답변
현재 매개 변수를 새 매개 변수와 혼합하는 방법 :
{% url 'order_list' %}?office=foobar&{{ request.GET.urlencode }}
요청 변수를 갖도록 설정을 수정하십시오.
from django.conf.global_settings import TEMPLATE_CONTEXT_PROCESSORS as TCP
TEMPLATE_CONTEXT_PROCESSORS = TCP + (
'django.core.context_processors.request',
)
답변
urlencode
인수가 변수 인 경우 사용
<a href="{% url 'myview' %}?office={{ some_var | urlencode }}">
또는 공백과 같은 특수 문자로 인해 URL이 깨질 수 있습니다.
문서 : https://docs.djangoproject.com/en/3.0/ref/templates/builtins/#urlencode
답변
첫째, 어리석은 대답 :
{% url my-view-name %}?office=foobar
심각한 답변 : 아니요, 할 수 없습니다. Django의 URL 리졸버는 URL의 경로 부분 만 일치 하므로 {% url %}
태그는 URL의 해당 부분 만 반전 할 수 있습니다.
답변
이 시도:
{% url 'myview' office=foobar %}
그것은 나를 위해 일했습니다. 기본적으로 해당 링크를 반대로 수행하고 주어진 인수를 적용합니다.