webpack插件 Webpack学习系列 | Webpack 5 集成 HTML 插件高效解决文件路径问题
主要通过实操讲解运用Webpack 5 如何集成 HTML 插件从而高效解决文件路径问题程序员优雅哥简介:十年程序员,呆过央企外企私企,做过前端后端架构。分享vue、Java等前后端技术和架构。 本文
顺晟科技
2021-06-19 09:39:12
184
[图片] [图片] [图片]
其实,这个问题很简单。
STATIC_ROOT的名字不要和STATIC_URL一样,并且下面的STATICFILES_DIRS配置也有问题,找不到路径是正常。
而且,你的bootstrap的css都没有放到static下面的css文件夹中。
对于静态文件的三个配置项:
STATIC_URL:决定写url时的前缀,通常都定义为'/static/'。这个一般不用该STATIC_ROOT:生产环境(DEBUG=False)时,静态文件的放置目录,配合collecstatic命令使用。如果你当前是开发环境,那么这个配置处于无效状态STATICFILES_DIRS:开发环境下使用,生产环境下无效。它用于定义额外的静态文件放置目录。可以是列表或者元组形式,例子如下:STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'all_statics'),]最重要的是:STATIC_ROOT和STATICFILES_DIRS不能使用同样的目录。
配置好了后,你需要:
在模板文件中{% load static %}加载静态文件上下文,然后使用{% static xxx % }在开发环境中,使用python manage.py collectstatic 收集静态文件到STATIC_ROOT中。所以,你的资料贴得不全,缺少模板中是如何引用的,是否处于开发环境,是否执行了collectstatic 命令等等。自己逐一比对吧。
最后建议系统地学习Django。而不是跟着网上不成体系的文章,遍地是坑,讲解不透彻和清楚。
推荐:
django 核心配置项 - 刘江的django教程如果你的bootstrap是放在本地static目录了,你需要把static路径放到STATICFILES_DIRS里,可以参考:https://docs.djangoproject.com/en/3.1/ref/settings/#std:setting-STATICFILES_DIRS 这一节。你的html template里面有加上这个没有:{% load static %}
另外也可以用cdn来加载bootstrap,比如在html中head中加上这句:<link href="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/css/bootstrap.min.css" rel="stylesheet">
19
2022-10
15
2022-09
15
2022-09
03
2021-07
19
2021-06
16
2021-06