在django项目中找不到帐户/注册

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

我是 Django 新手,从基础开始。问题是在遵循教程时我创建了一个具有注册页面的帐户应用程序。由于某种原因,每当我尝试进入我的注册页面时,django 都会告诉我它与任何路径都不匹配。

下面是给定的代码: 帐户应用程序 url.py

from django.urls import path
from . import views
urlpatterns = [
    path('register', views.register, name="register")
 ]

帐户应用程序的视图

from django.shortcuts import render

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

register.html 是:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Registeration</title>
</head>
<body>
    <form action="register" method = "post">
        {% csrf_token %}
        <input type= "text" name="first_name" placeholder="First Name"><br>
        <input type= "text" name="last_name" placeholder="Last Name"><br>
        <input type= "text" name="username" placeholder="UserName"><br>
        <input type= "text" name="password1" placeholder="Password"><br>
        <input type= "text" name="password2" placeholder="Verify Password"><br>
        <input type= "submit">
    </form>
</head>
<body>
    
</body>
</html>
  ```
web_project urls.py
   ```
from django.contrib import admin
from django.urls import include, path
from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    path("", include('travello.urls')),
    path('admin/', admin.site.urls),
    path('accounts/', include('accounts.urls')),
]
urlpatterns = urlpatterns + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

我收到的错误如下:

Page not found (404)
Request Method: GET
Request URL:    http://127.0.0.1:8000/accounts/register.html
Using the URLconf defined in web_project.urls, Django tried these URL patterns, in this order:

[name='index']
admin/
accounts/ register [name='register']
^media/(?P<path>.*)$
The current path, accounts/register.html, didn’t match any of these.

You’re seeing this error because you have DEBUG = True in your Django settings file. Change that to False, and Django will display a standard 404 page.

P.s:我知道这个问题之前已经被问过,但我尝试了一切仍然无法理解我在哪里犯了错误。

python django django-urls
2个回答
1
投票

您忘记将

/
添加到您的网址

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

settings.py
中制作:

TEMPLATES = [
    {
        ...
        'DIRS': ['templates'],
        ... 
    }

0
投票

您只需粘贴代码即可;

导入您的路径......

urlpatterns=[
    path('register/', views.register, name="register")
 ]

基本上,您可以将 - 'register/' 称为任何您想要的东西,但在创建文件路径时有必要在创建路径名后添加斜杠。这使您的 URL 能够识别必要的路径。

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