python-3.x - Django在依赖项中缺少静态文件清单条目
问题描述
我正在处理一个 django 项目(我们称之为django-project
)和一个抽象的依赖项(我们称之为django-dependency
)。该依赖项包含一些静态文件,这些文件也体现在其Manifest.in
. django-dependency
已安装在环境中并且文件在那里,manage findstatic django-dependency/js/some-file.js
成功在环境中找到该文件。
django-project
当 DEBUG 为 True 且不更改STATICFILES_STORAGE
. 但是,当使用 DEBUG=False 在管理面板中保存对象时,我收到错误 500 并显示消息:Missing staticfiles manifest entry for 'django-dependecy/js/some-file.js'
。manage.py collectstatic
与默认值一起使用STATICFILES_STORAGE
。
当我更改STATICFILES_STORAGE
为django.contrib.staticfiles.storage.ManifestStaticFilesStorage
. 我无法manage.py collectstatic
甚至manage.py findstatic
(我收到与上述相同的错误)。什么时候STATICFILES_STORAGE
默认我可以这样做findstatic
但是如上所述应用程序在保存某些对象时会中断(django-dependency 是一个管理小部件)。能够运行django-dependency
时工作正常(功能符合预期) 。django-project
django-project 的静态文件配置:
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'files', 'public', 'static')
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'files', 'dist')]
我应该以某种方式配置django-dependency
静态文件吗?Manifest.in 已经包含所需的静态文件?我真的不知道。这是 django-dependency 中的文件的使用方式:
class DjangoWidget(forms.Textarea):
class Media:
js = [
static('django-dependency/js/some-file.js'), # again: found correctly with findstatic
]
css = {
'all': [static('django-dependency/js/some-file.css')],
}