我正在使用React App,之后我想创建一个bundle.js文件并将其放在 assets / bundles / 文件夹中。
这是 settings.py 文件:
INSTALLED_APPS = (
...
'webpack_loader',
)
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'assets'),
)
STATIC_URL = '/media/static/'
WEBPACK_LOADER = {
'DEFAULT': {
'BUNDLE_DIR_NAME': 'bundles/',
'STATS_FILE': os.path.join(BASE_DIR, 'webpack-stats.json'),
}
}
这是 template.html :
<div id="container"></div>
{% load render_bundle from webpack_loader %}
{% render_bundle 'main' %}
我得到的错误是:
获取 example.com/media/static/bundles/bundle.js 404(未找到)
如果我跑
python manage.py collectstatic
它会将 bundle.js 从 assets / bundles / 移至 media / static / bundles 。但是,每当我更换捆绑包时,我都不想运行它。
在django-webpack-loader文档中,没有运行collectstatic命令,但仍然可以访问bundle.js,就像它在静态文件夹中一样。但实际上它位于资产中。
答案 0 :(得分:0)
这是你在找什么?
./manage.py collectstatic --noinput
如果您有很多重复项,可以使用--clear
方法
./manage.py collectstatic --clear
如果您在添加软件包时遇到困难,可以搜索JS的路径,如:
./manage.py findstatic js/bundle.js
详细了解命令here