標籤:儲存 manage port set dir ati path 靜態 init
測試版本:Django 1.10
問題:Django項目找不到靜態資源
解決方案:
1.首先你需要在自己的app下面建立2個目錄 static 和 templates
樹形結構如下(DjangoProject 是我的項目名 blogs 是app名,要建立的目錄在blogs下)
DjangoProject/├── db.sqlite3├── manage.py├── DjangoProject│ ├── __init__.py│ ├── settings.py│ ├── urls.py│ ├── wsgi.py├── blogs│ ├── admin.py│ ├── apps.py│ ├── __init__.py│ ├── migrations│ │ ├── __init__.py│ ├── models.py│ ├── static│ │ └── style.css│ ├── templates│ │ └── index.html│ ├── tests.py│ ├── views.py└── templates
static下存放靜態檔案,templates下存放網頁模板檔案
2.修改setting.py
找到 STATIC_URL = ‘/static/‘ 在後面追加一行,然後儲存
STATIC_ROOT = os.path.join(BASE_DIR, ‘static‘)
最後儲存好的樣子是這樣的(紅色部分為修改的):
# Static files (CSS, JavaScript, Images)# https://docs.djangoproject.com/en/1.10/howto/static-files/STATIC_URL = ‘/static/‘STATIC_ROOT = os.path.join(BASE_DIR, ‘static‘)
3.修改 urls.py
在urls.py中匯入2個庫
from django.conf import settingsfrom django.conf.urls.static import static
並在結尾追加
+ static(settings.STATIC_URL, document_root = settings.STATIC_ROOT)
最後儲存好是這個樣子的(紅色部分為修改的):
from django.conf.urls import urlfrom django.contrib import admin
form blogs import views as blogs_viewsfrom django.conf import settingsfrom django.conf.urls.static import staticurlpatterns = [ url(r‘^admin/‘, admin.site.urls),
url(r‘^$‘, blogs_views.index),] + static(settings.STATIC_URL, document_root = settings.STATIC_ROOT)
4.重新運行你的項目
切記靜態檔案全都放在 static下面,網頁模板檔案全都放在 templates下面
最後網頁裡引用
<link rel="stylesheet" href="/static/style.css">
直接寫/static/下的檔案,就可以引用了!
重新運行你的項目,開啟瀏覽器看看。靜態資源檔案載入成功!
Django 1.10 找不到靜態資源解決方案