对 Django 非常陌生,我有点困惑。我已经在我的 html 模板文件中放置了一个链接;但是,单击该链接会报告 404 错误。
应用程序views.py文件:
from django.shortcuts import render
def index(request):
return render(request, "login/index.html", None)
def terms(request):
return render(request, "login/terms.html", None)
Run Code Online (Sandbox Code Playgroud)
应用程序网址.py:
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name="index"),
path('', views.terms, name="terms")
]
Run Code Online (Sandbox Code Playgroud)
index.html 中的违规代码:
By signing in, you agree to our <a href="/login/terms.html">Terms Of Use Policy</a>
Run Code Online (Sandbox Code Playgroud)
单击该链接会弹出 404 错误。当我学习新框架时,任何帮助将不胜感激。
views.index第一个问题是和的路径views.terms共享相同的路径。结果,你变得views.terms无法访问。
因此,您应该更改路径之一,例如:
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
path('terms/', views.terms, name='terms')
]Run Code Online (Sandbox Code Playgroud)
您最好使用{% url ... %}模板标签 [Django-doc]来解析 URL,因为如果您稍后决定更改某个视图的路径,您仍然可以计算路径。
在你的模板中,你可以这样写:
By signing in, you agree to our <a href="{% url 'terms' %}">Terms Of Use Policy</a>Run Code Online (Sandbox Code Playgroud)