模板标记不遵守传递的上下文变量

时间:2019-10-25 16:28:35

标签: python django

我的自定义模板标签存在问题,不尊重传递的上下文变量。因此,我有一个名为task_list.html的模板,其中包括引用我的自定义模板标签(paginator.html)的{% url_replace %}

task_list.html

...
{% include 'paginator.html' with page_obj=tasks_tomorrow page='page_tomorrow' %}
...

paginator.html

...
<a class="page-link" href="?{% url_replace page=page_obj.paginator.num_pages %}" 
...

但是,构造的URL是http://127.0.0.1:8000/todo/?page=2,而不是http://127.0.0.1:8000/todo/?page_tomorrow=2

这是我的模板标签:

from django.utils.http import urlencode
from django import template

register = template.Library()

@register.simple_tag(takes_context=True)
def url_replace(context, **kwargs):
    query = context['request'].GET.dict()
    query.update(kwargs)
    return urlencode(query)

这是什么问题?

0 个答案:

没有答案