空路径与这些都不匹配。姜戈

时间:2021-05-12 21:09:54

标签: python django

我完全是 Django 的初学者。请帮我解决它,我一直在尝试这样做2天。基本上我创建了一个模型,在那里定义了一个类,但是当我打开页面时出现错误

Using the URLconf defined in reports_proj.urls, Django tried these URL patterns, in this order:
admin/
^static/(?P<path>.*)$
^media/(?P<path>.*)$
The empty path didn’t match any of these.

urls.py

from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static

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

urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

admin.py

from django.contrib import admin
from .models import Profile

admin.site.register(Profile)

settigs.py

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    #our apps
    'customers',
    'products',
    'profiles',
    'reports',
    'sales',
    #3rd party
    'crispy_forms'
]

当我输入 path('login/', admin.site.urls),它可以工作,但每当我尝试以管理员身份登录时都会显示 Please enter the correct username and password for a staff account.

看来我应该在 views.py 中写一些方法,因为它只有 from django.shortcuts import render 行。如果是真的,哪些?

1 个答案:

答案 0 :(得分:0)

我将尝试以简单的方式解释 django 的工作原理。

在 urls.py 中定义将显示哪个视图(来自 views.py),在 views.py 中链接模板(HTML)并将数据从数据库(models.py)传递到此 HTML

因此,如果您想创建例如汽车经销商网站,您需要

  1. 在 Models.py 中创建汽车模型,
  2. 在模板中/创建一个带有前端的 HTML 文件
  3. 在 views.py 中将汽车模型从 models.py 传递到模板 (HTML)
  4. 在 urls.py 中将 views.py 链接到某个路径

如果用户转到 www.domain.com/cars django 将首先查看 urls.py 以检查您是否定义了“/cars”路径 -> 从那里检查链接的 view.py 以查看向用户显示哪个 HTML

我建议你阅读 Django 教程 https://docs.djangoproject.com/en/3.2/intro/tutorial01/ diagram how django works

相关问题