2017-08-11 86 views
0

我在加載Django視圖時遇到問題。 FYI很新的Django)Django視圖無法從項目文件夾加載

是我得到的錯誤是TemplateDoesNotExist在/調查/

Django是從 「異常位置 」 加載/用戶/姓名/蟒蛇/ ENVS/Django的/lib/python2.7/site-packages/django/template/loader.py」

應該從加載 「/Users/NAME/Documents/Django/template/index.html」

我在我的APP view.py

return render(request,'index.html') 

我的settings.py

TEMPLATES = [ 
    { 
     'BACKEND': 'django.template.backends.django.DjangoTemplates', 
     'DIRS': ["/Users/NAME/Documents/Django/template/"], 

我如何從我的項目文件的視圖加載?

文件結構

total 0 

drwxr-xr-x 6 NAME staff 204 11 Aug 16:17 Django 

drwxr-xr-x 6 NAME staff 204 26 Jun 23:17 test 




./Django: 

total 32 

drwxr-xr-x 10 NAME staff 340 11 Aug 16:17 Django 

-rw-r--r-- 1 NAME staff 12288 10 Aug 21:09 db.sqlite3 

-rwxr-xr-x 1 NAME staff 804 10 Aug 21:08 manage.py 

drwxr-xr-x 15 NAME staff 510 11 Aug 16:17 polls 



./Django/Django: 

total 56 

-rw-r--r-- 1 NAME staff  0 10 Aug 21:08 __init__.py 

-rw-r--r-- 1 NAME staff 147 10 Aug 21:09 __init__.pyc 

-rw-r--r-- 1 NAME staff 3160 11 Aug 10:14 settings.py 

-rw-r--r-- 1 NAME staff 2648 11 Aug 10:14 settings.pyc 

-rw-r--r-- 1 NAME staff 176 10 Aug 21:24 urls.py 

-rw-r--r-- 1 NAME staff 402 10 Aug 21:25 urls.pyc 

-rw-r--r-- 1 NAME staff 390 10 Aug 21:08 wsgi.py 

-rw-r--r-- 1 NAME staff 603 10 Aug 21:09 wsgi.pyc 



./Django/polls: 

total 80 

-rw-r--r-- 1 NAME staff 0 10 Aug 21:19 __init__.py 

-rw-r--r-- 1 NAME staff 146 10 Aug 21:25 __init__.pyc 

-rw-r--r-- 1 NAME staff 128 10 Aug 21:19 admin.py 

-rw-r--r-- 1 NAME staff 150 10 Aug 21:19 apps.py 

drwxr-xr-x 3 NAME staff 102 10 Aug 21:19 migrations 

-rw-r--r-- 1 NAME staff 122 10 Aug 21:19 models.py 

-rw-r--r-- 1 NAME staff 264 10 Aug 21:43 models.pyc 

drwxr-xr-x 3 NAME staff 102 10 Aug 21:40 templates 

-rw-r--r-- 1 NAME staff 125 10 Aug 21:19 tests.py 

-rw-r--r-- 1 NAME staff 116 10 Aug 21:23 urls.py 

-rw-r--r-- 1 NAME staff 326 10 Aug 21:25 urls.pyc 

-rw-r--r-- 1 NAME staff 184 11 Aug 15:56 views.py 

-rw-r--r-- 1 NAME staff 483 11 Aug 15:56 views.pyc 
+0

錯誤頁面通常顯示Django試圖從中加載模板的文件夾。 –

+0

請顯示你的'Django/polls/templates'目錄和子目錄的佈局。 – Alasdair

+0

嘿傢伙,對於遲到的回覆感到抱歉。週末我在辦公室離開了電腦。 克勞斯D.見下文 使用引擎的Django: 'django.template.loaders.app_directories.Loader:/Users/NAME/anaconda/envs/Django/lib/python2.7/site-packages/django/contrib/ admin/templates/index.html(來源不存在)' 'django.template.loaders.app_directories.Loader:/Users/NAME/anaconda/envs/Django/lib/python2.7/site-packages/django/contrib /auth/templates/index.html(來源不存在) ' 麥金太爾 /用戶/名/文件/ Django的/ Django的/調查/模板 它只是在它 –

回答

0

Django是仍在尋找舊目錄/調查/爲模板,可能有幾個這種情況的原因。簡單解決方案是確保您停止服務器,並重新啓動它。在django開發服務器上,當你保存一個文件時,它會做一個軟重新加載,然而,對settings.py文件的任何改變都需要完全停止(使用Ctrl + C)並重新啓動才能實現。

此外,爲確保該目錄是正確的,我會建議增加

import os 

在你的文件的開頭和

print{os.getcwd()} 

前右你的回報。這樣,你可以看到它是在搜索的完整路徑,如下面

+0

index.html文件試圖重新啓動服務器並添加了以下代碼 return HttpResponse(os.getcwd()) 這是輸出 /Users/NAME/Documents/Django/Django –

+0

你的文件樹是如何設置的?您提供的路徑使我相信當前目錄與您的模板文件夾不在同一個目錄,可能會導致問題。一個簡單的解決方法是將您的模板文件夾移動到第二個django文件夾中,然後在設置文件中更新模板DIR。 –

+0

剛剛添加文件夾文件結構到主帖 –

0

指定目錄:

'DIRS': ["/Users/NAME/Documents/Django/template/"], 

是錯誤的。您應該使用BASE_DIR的path.join來構建路徑。我也不認爲你需要指定模板目錄,如果你把它留空,那麼它也會工作。

'DIRS': [] 

當你離開它空Django會在你的設置app_folder/templates

問題搜索模板是第一您的路徑是錯誤的,你的模板駐留在民意測驗目錄未Django的目錄。其次,您還有一個錯字template,而它應該是templates

解決方案:指定本 -

'DIRS': [] 

在您的設置和其他設置和代碼都很好。

0

我在設置工作了,

。PY文件是

'DIRS': ["/Users/NAME/Documents/Django/template/"], 

需求是

'DIRS': ['polls/templates'], 

它接縫Django的社區是非常強大的和有益的。這將是我會繼續使用Django的主要原因:)

非常感謝大家幫助我。對於nube問題感到抱歉。

+0

也是從這篇文章https://stackoverflow.com/questions/30050634/django-templatedoesnotexist-error-but-using-loader-django-template-loaders-a –