html 在 Django 中无法访问文件 URL

html file urls is not accessible in django

register.html 在 'register/' url

上无法访问

尝试将 url 更改为 '' 并且网页可以访问,但无法访问 'register/'

项目urls.py

 from django.contrib import admin
from django.urls import path,include

urlpatterns = [
    path('login/',include('login.urls')),
    path('admin/', admin.site.urls),
]

应用程序urls.py

 from django.urls import path
from . import views

urlpatterns = [
    path('',views.indexView, name = "home"),
    path('dashboard/', views.dashboardView, name="dashboard"),
    #path('login/',),
    path('register/',views.registerView, name="register_url"),
    #path('logout/',),
]

views.py

 from django.shortcuts import render

def indexView(request):
    return render(request,'index.html')

def dashboardView(request):
    return render(request,'dashboard.html')

def registerView(request):
    return render(request,'register.html')

templates/register.html

在测试 URL.

时,在每个 URL 应用模式 urls.py 文件之前输入 login/

您应该在主 urls.py 中包含 url 应用 urls.py 的映射 这可能对你有帮助。

from django.contrib import admin
from django.urls import path,include


urlpatterns = [
    path('',include('apps.urls')), #put you app name here
    path('admin/', admin.site.urls),
]

应用程序urls.py

 from django.urls import path
from . import views

urlpatterns = [
    path('',views.indexView, name = "home"),
    path('dashboard/', views.dashboardView, name="dashboard"),

    path('register/',views.registerView, name="register_url"),

]

这会起作用,您可以在应用程序 urls.py 中添加登录名/url 映射。 这种流程会很容易理解。

使用 url_name 进行 URL 调用:

{% url 'register_url' %} 

这将直接在项目中搜索'register_url' 并将return 路径。 url_name 必须是唯一的,因此请确保您的 url_name 是唯一定义的。