Django网站创建从html页面到另一个应用程序的主要html页面的链接

时间:2017-12-20 20:00:59

标签: html django hyperlink

我在django项目中有一个索引页面,其中包含(在它的header.html页面中)导航栏。我希望导航栏实际工作......目前当我点击“老师'在导航栏中我收到错误。

header.html中的代码(具有导航栏)

</button>
        <div class="collapse navbar-collapse" id="navbarResponsive">
          <ul class="navbar-nav ml-auto">
            <li class="nav-item mx-0 mx-lg-1">
              <a class="nav-link py-3 px-0 px-lg-3 rounded js-scroll-trigger" href="/teachers/teachers.html">Teachers</a>
            </li>
        </div>

上述链接是:

HREF =&#34; /teachers/teachers.html"&GT;教师

teachers.html页面所在的文件路径/结构: C:\用户\用户\桌面\ RAST \教师\模板\教师

错误:

Using the URLconf defined in website.urls, Django tried these URL patterns, in this order:

admin/
admin/
header/ [name='header']
[name='index']
teachers/
The current path, teachers.html, didn't match any of these.

我的问题是 - 我需要在header.html页面中写一下(或者我需要做些什么?)来获取导航栏按钮&#39;老师&#39 ;转到teachers.html页面。

2 个答案:

答案 0 :(得分:3)

Django是一个以动态网页生成为特色的框架,这意味着有一些功能可以让您轻松维护和扩展您的Web应用程序,同时保留高度自定义和控制。其中一个功能是模板。

您已将teachers.html放置在模板目录中,因此在Django-world中,您将放置一个指向网页生成器的URL路径,如下所示:

href link&gt; url&gt;视图&gt;模板

您的错误消息可让您深入了解此信息,因为它会告诉您它尝试匹配给定网址的网址。

navbar.html 中,使用Django语法输入动态网址:

<a href="{% url 'teachers %}">Teachers</a>

urls.py 中,向Django提供有关将关键字映射到哪个视图的说明:

urlpatterns = [
    ...
    url(r'^teachers', views.teachers),
    ...
]

现在,在 views.py 中,您需要告诉Django教师功能正确生成网页需要什么。

def teachers(request):
    return render(request, 'app/teachers.html')

应该在Django中将应用程序的名称替换为应用程序的名称。

现在,这是如何在Django中构建动态框架的高级示例。细节可能因您的构建和项目结构而异。我建议您阅读Django文档和教程。它们是彻底和详细的。 https://docs.djangoproject.com/en/2.0/

同样,您要指向的任何页面都应在网址中声明,并由视图生成。在views.py中,您可以执行大量应在上下文中发送到模板的后端工作。

答案 1 :(得分:1)

网址不正确。而不是指向模板文件名:

href="/teachers/teachers.html"

使用您在urls.py文件中提供的实际链接:

href="/teachers/"