0

我最近正在关注一个关于在 Django 中使用 webpack 的教程,对于我来说,本地主机只是找不到我的包文件

这是我在本地主机上检查时控制台显示的内容:

GET http://127.0.0.1:8000/static/bundles/bundle.js net::ERR_ABORTED 404 (Not Found)

但是我的项目根目录中确实有一个名为 static 的目录,里面有一个 bundles 目录,还有一个 bundle.js 文件。我不明白为什么本地主机找不到我的文件

这是我的树的一部分:

├── static
│   └── bundles
│       └── bundle.js
├── templates
│   ├── base.html
│   ├── components
│   │   ├── game
│   │   │   └── game.html
│   │   └── lobby
│   │       ├── LobbyBase.jsx
│   │       ├── index.jsx
│   │       └── lobby.html
│   ├── home.html
│   ├── login.html
│   └── register.html
├── webpack-stats.json
└── webpack.config.js

如您所见,里面有一个静态文件、一个包文件和里面的 bundle.js。这是我的 Django 设置代码:

STATIC_URL = '/static/'

WEBPACK_LOADER = {
    'DEFAULT': {
        'BUNDLE_DIR_NAME': 'bundles/',
        'STATS_FILE': os.path.join(BASE_DIR, 'webpack-stats.json'),
    },
}

任何帮助将不胜感激!太感谢了

编辑:跟进:删除 STATIC_URL 也无济于事。认为这可能会导致问题,但似乎并非如此

4

1 回答 1

0

我仍然不知道为什么这会解决问题,但这是我为解决它所做的:

将此添加到设置:


STATICFILES_DIRS = [
    os.path.join(BASE_DIR, "static"),
]

并且神奇地本地主机可以找到该文件。如果有人可以解释为什么会发生这种情况,那就太棒了,希望如果遇到类似问题,这可以为其他人节省一些时间!

于 2020-02-04T21:29:04.263 回答