Django 1.10 找不到靜態資源解決方法


測試版本: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 settings
from django.conf.urls.static import static

 並在結尾追加

+ static(settings.STATIC_URL, document_root = settings.STATIC_ROOT)

 最后保存好是這個樣子的(紅色部分為修改的):

from django.conf.urls import url
from django.contrib import admin
form blogs import views as blogs_views from django.conf import settings from django.conf.urls.static import static urlpatterns = [ 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/下的文件,就可以引用了!

重新運行你的項目,打開瀏覽器看看。靜態資源文件加載成功!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM