我想在视图中创建一个简单的导航块,谁是全局布局视图。
我认为,我可以使用自定义的inclusion_tag来实现,但是我如何才能获得当前的请求URL,因为我想确定当前的URL并将其作为活动项目设置在导航块中。我怎样才能获得一些全局请求变量或者我还需要其他任何方法?
#templatetags/menutags.py
@register.inclusion_tag('menu.html')
def show_menu():
categories = Categories.object.all()
return {'categories': categories}
#templates/base.html
{% include menutags %}
<!DOCTYPE html>
<html lang="en">
<head></head>
<body>
{% show_menu %}
{% block content %}{% endblock %}
</body>
</html>
#templates/view.html
{% extends "base.html" %}
{% block content %}<div>...</div>{% endblock %}
答案 0 :(得分:0)
试试这个:
@register.inclusion_tag('menu.html', takes_context = True)
def show_menu(context):
categories = Categories.object.all()
path= context['request'].path
return {'categories': categories,'path':path}