簡體   English   中英

空路徑與其中任何一個都不匹配。 Django

[英]The empty path didn’t match any of these. Django

我是 Django 的初學者。 請幫我解決它,我已經嘗試了2天。 基本上我創建了一個 model,在那里定義了一個 class 但是當我打開頁面時出現錯誤

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線。 如果是真的,有哪些?

我將嘗試以簡單的方式解釋 django 的工作原理。

在 urls.py 中定義將顯示哪個視圖(來自views.py),在views.py 中鏈接模板(HTML)並將數據從數據庫(models.py)傳遞到這個 HTML

因此,如果您想創建例如汽車經銷商網站,您需要

  1. 在 Models.py 中為汽車創建 model,
  2. 在模板中/創建一個帶有前端的 HTML 文件
  3. 在views.py 中將汽車model 從models.py 傳遞到模板(HTML)
  4. 在 urls.py 中將 views.py 鏈接到某個路徑

如果用戶訪問www.domain.com/cars django 將首先查看 urls.py 以檢查您是否定義了“/cars”路徑 -> 從那里檢查鏈接的 view.py 以查看哪個 HTML 顯示給用戶

我會建議你 go 雖然 Django 教程https://docs.djangoproject.com/en/3.2/intro/tutorial01/ 圖 django 的工作原理

查看您的 settings.py 文件應用程序名稱,我認為您正在從帶有 pandas 和 matlpotlib 的管視頻 Django 中學習 django。

我也看了,也有同樣的問題。 如上述解決方案所述,您需要將 base.html 文件從模板連接到 customers/view.py 文件。 即使在連接到它之后,您也需要在 static 文件夾中有一些 javascript 和 css 文件。 因為在將 base.html 文件連接到 customer/view.py 之后,django 會詢問在 base.html 文件中指定的 js 和 css 文件。 所以導師沒有在視頻教程下提供的源鏈接中建立或提供所有材料。

所以我最后的建議是你是否可以構建所需的 js 和 css 代碼文件並放入 static 文件夾中。 如果沒有其他問題,它就可以工作。 但我更喜歡的方式是不要因為視頻教程的不足而恐慌或緊張。

搜索其他的。

試試這個。 在您的 settings.py 中,將STATIC_ROOTSTATICFILES_DIRS替換為:

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATICFILES_DIRS = [
   os.path.join(BASE_DIR, '<APPNAME>/static/')
]

將 <APPNAME> 替換為您的項目名稱。

這將設置根目錄路徑。

上面顯示的錯誤是因為您還沒有設置 urls.py 和 views.py!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM