Django 无法加载静态文件(js,css,image)解决办法

论坛 期权论坛 编程之家     
选择匿名的用户   2021-5-29 15:24   11   0

找遍网页十几种方法,最终通过不断配置验证,最终实现Django对静态文件(js,css,image)的加载。

具体总结如下,按照四步走,问题得以解决!!!

一、第一步文件放置

如下图所示:在项目文件夹新建static文件夹;

并新建css、img、js文件夹依次存放对应文件。

二、第二步settings.py配置

# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/2.2/howto/static-files/

STATIC_URL = '/static/'

# 把这些文件放到一起是为了用apache等部署的时候更方便
STATIC_ROOT = os.path.join(BASE_DIR, 'sign/static')

# 其它 存放静态文件的文件夹,可以用来存放项目中公用的静态文件,里面不能包含 STATIC_ROOT
# 如果不想用 STATICFILES_DIRS 可以不用,都放在 app 里的 static 中也可以
STATICFILES_DIRS = [
('css',os.path.join(STATIC_ROOT,'css').replace('\\','/') ),
('js',os.path.join(STATIC_ROOT,'js').replace('\\','/') ),
('imag',os.path.join(STATIC_ROOT,'imag').replace('\\','/') ),
('upload',os.path.join(STATIC_ROOT,'upload').replace('\\','/') ),
]

# 这个是默认设置,Django 默认会在 STATICFILES_DIRS中的文件夹 和 各app下的static文件夹中找文件
# 注意有先后顺序,找到了就不再继续找了
STATICFILES_FINDERS = (
"django.contrib.staticfiles.finders.FileSystemFinder",
"django.contrib.staticfiles.finders.AppDirectoriesFinder"
)
三、urls.py配置

from django.conf import settings

from django.views.static import serve

urlpatterns = [
url(r'^static/(?P<path>.*)$',serve,{'document_root': settings.STATIC_ROOT}),

四、html路径配置

对应路径添加

{%static*****************%}

PS:参考网页链接如下

1.https://blog.csdn.net/zxyhfdl/article/details/81907021

2.https://blog.csdn.net/dong_W_/article/details/78767573

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP