嗨,我是 django 的新手,我在 django 中的 for 循环方面遇到问题,要制作导航栏/菜单,我在 html 中使用 for 循环,如下所示:
<div class="menu">
<a href="/">
<div class="menu-link klik">
<i class="bx bx-home"></i>
<div class="contentMenu hidden">HOME</div>
</div>
</a> for key,value in menu.items %}
<a href="{% url 'app_'|add:key|add:':'|add:key %}">
<div class="menu-link klik">
<i class="{{value}}"></i>
<div class="contentMenu hidden">{{key|upper}}</div>
</div>
</a> endfor %} </div>
和观点:
from django.shortcuts import render
from .forms import ProjectForm
def index(request):
projectForm = ProjectForm()
context = {
'title': 'Achmad Irfan Afandi',
'tile': 'Home',
'subtitle': 'Data Analyst',
'social_media':
{'linkedin':'https://www.linkedin.com/in/achmad-irfan-afandi-9661131a6/',
'github':'https://www.github.com/achmadirfana',
'facebook':'https://www.facebook.com/achmad.irfan.754',
'twitter':'https://www.facebook.com/achmad.irfan.754',
'instagram':'https://www.facebook.com/achmad.irfan.754'},
'menu':
{'about': 'bi bi-file-earmark-person',
'education': 'bx bxs-graduation',
'skill': 'bx bx-wrench',
'projects': 'bx bx-building',
'services': 'bx bx-support',
'contact': 'bx bxs-contact'},
'projectForm': projectForm
}
return render(request, 'index.html', context)
我确实看到 for 循环中缺少括号和百分比...否则将需要所有 html 文档来继承(扩展)模板。所以首先显示的是定义模板标签,然后每个其他页面都需要继承模板。
<!DOCTYPE html>
<html lang="en">
<head>
{% block title %}
<title>Local Library</title>
{% endblock %}
</head>
<body>
{% block sidebar %}
<!-- insert default options for every page that extends -->
</a> {% for key,value in menu.items %}
<a href="{% url 'app_'|add:key|add:':'|add:key %}">
<div class="menu-link klik">
<i class="{{value}}"></i>
<div class="contentMenu hidden">{{key|upper}}</div>
</div>
</a> {% endfor %} </div>
{% endblock %}
{% block content %}
<!-- default content (on every page extending) -->
{% endblock %}
</body>
</html>
然后在其他 html 文档中。
{% extends "above_template.html" %}
{% block content %}
<h1>...</h1>
<p>
...
</p>
{% endblock %}