Link 在 Python Django 中正确地 index.html
Link correctly to index.html in Python Django
我有一个包含以下文件的 Python Django 项目。
proj1/urls.py
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('website.urls')),
]
proj1/website/views.py
from django.shortcuts import render
def index(request):
return render(request, 'index.html', {})
proj1/website/urls.py
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name="index"),
]
在 proj1/website/templates 下我有几个 .html 文件。
我如何 link 到我的 .html 文件中的那些?
我目前在 index.html
中写了以下内容
<a href="index.html">Home</a>
不过,当我为 index.html 按 link 时,我收到错误消息。
Page not found (404)
Request Method: GET
Request URL: http://localhost:8000/index.html
Using the URLconf defined in leam.urls, Django tried these URL patterns, in this order:
admin/
[name='index']
The current path, index.html, didn't match any of these.
我做错了什么?我是否需要指定 index.html 所在的完整路径,或者这里有什么问题? index.html 加载 运行 manage.py.
<a href="{% url 'website:index' %}">Home</a>
from django.urls import path
from . import views
app_name = 'website'
urlpatterns = [
path('', views.index, name="index"),
]
试试这个,应该可以。
公式为{% url '<namespace or app name>:<view name>' %}
我有一个包含以下文件的 Python Django 项目。
proj1/urls.py
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('website.urls')),
]
proj1/website/views.py
from django.shortcuts import render
def index(request):
return render(request, 'index.html', {})
proj1/website/urls.py
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name="index"),
]
在 proj1/website/templates 下我有几个 .html 文件。 我如何 link 到我的 .html 文件中的那些? 我目前在 index.html
中写了以下内容<a href="index.html">Home</a>
不过,当我为 index.html 按 link 时,我收到错误消息。
Page not found (404)
Request Method: GET
Request URL: http://localhost:8000/index.html
Using the URLconf defined in leam.urls, Django tried these URL patterns, in this order:
admin/
[name='index']
The current path, index.html, didn't match any of these.
我做错了什么?我是否需要指定 index.html 所在的完整路径,或者这里有什么问题? index.html 加载 运行 manage.py.
<a href="{% url 'website:index' %}">Home</a>
from django.urls import path
from . import views
app_name = 'website'
urlpatterns = [
path('', views.index, name="index"),
]
试试这个,应该可以。
公式为{% url '<namespace or app name>:<view name>' %}