首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django如何在预定义模板中传递用户名

Django如何在预定义模板中传递用户名
EN

Stack Overflow用户
提问于 2022-07-27 17:37:41
回答 1查看 18关注 0票数 0

我为页眉/页脚和导入创建了一个模板,如果我想访问页眉模板中的用户名,我就不能这样做,因为它没有视图。如何将用户名传递给标头模板?

header_template.py

代码语言:javascript
复制
from django import template

register = template.Library()


@register.inclusion_tag('home/partials/header.html')
def header(element):
    return {'element': element, }

导入模板

代码语言:javascript
复制
{% load header_template %}
{% header context %}

模板中的用法:

代码语言:javascript
复制
                        {% if user.is_authenticated %}
                            <a class="btn btn-primary display-4" href="{% url 'home:profil' %}">Profil</a>
                        {% else %}
                            <a class="btn btn-primary display-4" href="{% url 'home:login' %}">Login</a>
                        {% endif %}

Thanks for your help.
EN

回答 1

Stack Overflow用户

发布于 2022-07-27 21:08:06

您可以在标签中使用context

代码语言:javascript
复制
@register.inclusion_tag('home/partials/header.html', takes_context=True)
def header(context, element):
    return context | {'element': element}

在这里阅读更多信息:https://docs.djangoproject.com/en/dev/howto/custom-template-tags/#inclusion-tags

我的观点是,你不需要这个,每个新标签在模板中的原因-一个错误的逻辑。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73142383

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档