Skip to main content
 首页 » 编程设计

python之如何在 Django 中设置 id 标签等于 URL 名称

2024年10月01日31mate10pro

我正在尝试将动态 id 属性设置为 <body> HTML 中的标记。

像这样的 - <body id="{{ django_view_name }}>"

我想要 id具有页面名称的属性,例如主页 id="home"和博客页面 id="blog"和联系页面id="contact"

我不想使用 Javascript 或 Jquery。

我创建了一个 main.html模板然后我是inheriting每个其他模板中的主模板,如 index.html模板。

main.html中的代码标签看起来像这样 -

<div class="content-wrapper" id="content"> 
    <%include file="${static.get_template_path('header.html')}" args="online_help_token=online_help_token" /> 
    ${self.body()} 
</div> 

然后在 index.html 上模板我是inheriting像这样 -

<%inherit file="main.html" /> 

更新:需要更多信息

我如何计算 ${ request.resolver_match.url_name } 的值? .例如,如果 id="${ request.resolver_match.url_name }"评估为 id="home" , 然后我想做这样的事情 -

%if ${ request.resolver_match.url_name }=root: 
    <div class="container"> 
else: 
    something_else 

我该怎么做?非常感谢任何帮助。

请您参考如下方法:

试试这个,

<body id="{{ request.resolver_match.url_name }}">  

这将根据您在 urls.py urls 中定义的 url 名称生成 id

更新: 编辑问题后,我看到您使用了 mako 模板

所以你需要,

<body id="${ request.resolver_match.url_name }">