Django 1.10 找不到静态资源解决方法
测试版本:Django 1.10
问题:Django项目找不到静态资源
解决方法:
1.首先你需要在自己的app下面创建2个目录 static 和 templates
树形结构如下(DjangoProject 是我的项目名 blogs 是app名,要创建的目录在blogs下)
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
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/' 在后面追加一行,然后保存
|
1
|
STATIC_ROOT = os.path.join(BASE_DIR, 'static') |
最后保存好的样子是这样的(红色部分为修改的):
|
1
2
3
4
5
|
# 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个库
|
1
2
|
from django.conf import settingsfrom django.conf.urls.static import static |
并在结尾追加
|
1
|
+ static(settings.STATIC_URL, document_root = settings.STATIC_ROOT) |
最后保存好是这个样子的(红色部分为修改的):
|
1
2
3
4
5
6
7
|
from django.conf.urls import urlfrom django.contrib import adminform 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下面
最后网页里引用
|
1
|
<link rel="stylesheet" href="/static/style.css"> |
直接写/static/下的文件,就可以引用了!
重新运行你的项目,打开浏览器看看。静态资源文件加载成功!
浙公网安备 33010602011771号