Django - 使用 HTML href 链接到另一个视图

问题描述 投票:0回答:2

在我的主页中,我有 2 个链接,我想将用户带到不同的页面。我如何将 href 链接到我在views.py 中创建的视图?输入 html 文件名作为 href 并单击它将使搜索栏中的 url 显示为

/qualifications/qualifications.html
(当我希望它是
/qualifications/

时)

HTML:

<div id="nav_bar">
        <ul>
            <li><a href="home.html">Home</a></li>
            <li><a href="qualifications.html">Qualifications</a></li>         
        </ul>
    </div>

views.py

def qualifications(request):
    context = {"title": "Qualifications"}
    return render(request, "myApp/qualifications.html", context)

url.py

urlpatterns = [
    path("", views.home, name="home"),
    path("qualifications/", views.qualifications, name="qualifications"),
]
django django-views django-templates django-urls
2个回答
1
投票

您需要重定向到您的视图,而不是您的模板。为此,您的 href 应采用

{% url 'your_view_name' %}
形式。

所以在你的情况下,最终结果会是这样的:

<div id="nav_bar">
    <ul>
        <li><a href="{% url 'home' %}">Home</a></li>
        <li><a href="{% url 'qualifications' %}">Qualifications</a></li>         
    </ul>
</div>

请注意,如果您在

app_name
中定义了
urls.py
,则您的 href 将为
{% url 'your_app_name:your_view_name' %}


0
投票

我们在不考虑主根的情况下写出地址的其余部分: 示例:127.0.0.1:8000/course_list/detail/id

#x 是视图中的关键上下文名称

© www.soinside.com 2019 - 2024. All rights reserved.