首页 > 解决方案 > 空路径与其中任何一个都不匹配。姜戈

问题描述

我是 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.

网址.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)

管理员.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一行。如果是真的,有哪些?

标签: pythondjango

解决方案


我将尝试以一种简单的方式解释 django 是如何工作的。

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

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

  1. 在 Models.py 中为汽车创建模型,
  2. 在 templates/ 中创建一个带有前端的 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/ 图 django 的工作原理


推荐阅读