staticfiles:这是一个静态资源管理的app,django.contrib.staticfiles。老的版本中,静态资源管理一直是一个问题,部分app发布的时候需要带上静态资源,在部署的时候必须将每个app存在的static(这个目录是自己创建的)静态资源复制到项目根目录下同一个static目录(即staticfiles在项目目录下生成的static,与每个app下的static不同)。引入staticfiles之后,执行命令:python manage.py collectstatic就可以方便的将所用到的app中的静态资源复制到同一目录。
使用python manage.py collectstatic时项目settings.py中必须有(把所有app目录中的static集中到,项目目录中的static中)
STATIC_ROOT = os.path.join(BASE_DIR, "static")否则会提示错误,如下:
raise ImproperlyConfigured("You're using the staticfiles app "
django.core.exceptions.ImproperlyConfigured: You're using the staticfiles app without having set the STATIC_ROOT setting to a filesystem path.

本文介绍了Django中STATIC_ROOT和STATICFILES_DIRS的区别,以及它们在处理静态资源时的作用。STATIC_ROOT是用于collectstatic命令收集静态文件的目标目录,而STATICFILES_DIRS则定义了额外的静态文件来源。同时,文中提到了DEBUG模式对访问静态资源的影响,以及在nginx部署中处理静态文件的方法。
最低0.47元/天 解锁文章
2882

被折叠的 条评论
为什么被折叠?



