我试图创建一个模板来呈现id=pk的每个模型。但是我想知道我是否可以在我的HTML模板中链接到一个特定的模型。例如,而不是
<a href="{% url 'single-supplier' supplier.id %}"
我能写些类似于
<a href="{% url 'single-supplier' supplier.id=1 %}"
我问这个问题的原因是我想链接到我的导航栏中的一个特定ID。
{% load static %}
<header>
<div class="container">
<!-- Navbar -->
<nav id="navbar" class="{% if request.resolver_match.url_name == 'home' %} main-page {% endif %}">
<a href="{% url 'home' %}"><img src="{% static 'images/farmeclogo.png' %}" alt="Logo" id="logo"></a>
<ul class="nav-list">
<li class="nav-list-item"><a href="{% url 'home' %}"
class="{% if request.resolver_match.url_name == 'home' %} current {% endif %}">Home</a>
</li>
<li class="nav-list-item"><a href="{% url 'about' %}"
class="{% if request.resolver_match.url_name == 'about' %} current {% endif %}">About</a>
<ul class="nav-drop">
<li><a href="{% url 'about' %}">Our Team</a></li>
<li><a href="{% url 'about' %}">Our Story</a></li>
</ul>
</li>
<li class=" nav-list-item"><a href="{% url 'suppliers' %}"
class="{% if request.resolver_match.url_name == 'suppliers' %} current {% endif %}">Suppliers</a>
<ul class="nav-drop">
<li>
<a href="{% url 'single-supplier' supplier.id %}">SIP Grass
Machinery</a>
</li>
<li>
<a href="#">MX Loaders & Front-Linkage</a>
</li>
<li>
<a href="#">Sulky Fertilizer, Harrows & Drills</a>
</li>
</ul>
</li>
<li class="nav-list-item"><a href="amenity.html"
class="{% if request.resolver_match.url_name == 'amenity' %} current {% endif %}">Amenity</a>
<ul class="nav-drop">
<li><a href="#">Aerway</a></li>
<li><a href="#">Arag GPS & Sprayer Fittings</a></li>
<li><a href="#">Bargham Amenity Sprayers</a></li>
<li><a href="#">Twose Compact Hedge Cutters</a></li>
</ul>
</li>
<li class="nav-list-item"><a href="blog.html"
class="{% if request.resolver_match.url_name == 'blog' %} current {% endif %}">Blog</a>
</li>
<li class="nav-list-item"><a href="{% url 'contact' %}"
class="{% if request.resolver_match.url_name == 'contact' %} current {% endif %}">Contact
Us</a>
</li>
</ul>
</nav>
</div>
</header>
`
我试过渲染供应商的id = 1的地方,但不幸的是,这给了我一个错误。欢迎任何建议
1条答案
按热度按时间i7uaboj41#
不知道为什么你会想硬编码这个数字到您的导航栏,但如果你想这样做,它将如下。
你不能做
<a href="{% url 'single-supplier' supplier.id=1 %}"
,因为supplier.id
是Django用来形成url并将其提供给视图的数字,它不是视图和url要寻找的关键字参数。您需要执行的是
<a href="{% url 'single-supplier' X=1 %}"
,其中X
是在urls.py中定义的参数,例如:当然,您不一定要使用名称
X
,我正在创建路径,但这应该会给予您一个概念。