답변:
아니요, GET 매개 변수는 URL의 일부가 아니기 때문입니다.
끝에 추가하기 만하면됩니다.
<a href="{% url myview %}?office=foobar">
Django 1.5+ 용
<a href="{% url 'myview' %}?office=foobar">
example.com/myview/?office=foobar
대신에 URL을 중단하는 후행 슬래시가 발생 하지 example.com/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
some_var
변수는 href에서 비어 있지만 템플릿의 다른 곳에서 사용되는 경우 채워진 것으로 표시됩니다. v2.1
첫째, 어리석은 대답 :
{% url my-view-name %}?office=foobar
심각한 답변 : 아니요, 할 수 없습니다. Django의 URL 리졸버는 URL의 경로 부분 만 일치 하므로 {% url %}
태그는 URL의 해당 부분 만 반전 할 수 있습니다.
이 시도:
{% url 'myview' office=foobar %}
그것은 나를 위해 일했습니다. 기본적으로 해당 링크를 반대로 수행하고 주어진 인수를 적용합니다.