python - 如何让 Django 看到 Vue.js 编译生成的 dist/static 下的文件?
问题描述
我想知道在以下情况下如何为 Django 指定静态目录。
- 我根本不使用 Django 模板(我不在
{% static ... %}
html 文件中使用)。 - vue-cli 在 下生成输出
dist/
,这不在 Django 项目的范围内,我不喜欢改变这个。 - 在
index.html
,bundle.js
被加载<link href="static/js/bundle.js">
- 想让django看到dir
index.html
下的所有js文件。static/js
目录树
root
├── vue_proj
│ └── dist
│ ├── index.html <- SPA, and no Django template in this.
│ └── static <- I wouldd like to let Django see this dir!
│ └── js
│ └── bundle.js
└── django_proj <- I executed "django-admin startproject project" here.
└── project <- I executed "django-admin startapp app" here.
├── manage.py
├── app
└── project
├── settings.py <- What should I do here?
到目前为止,我可以dist/index.html
通过将 TEMPLATES 参数设置为../vue_proj/dist
.
我尝试了以下但导致加载js文件失败......
STATIC_ROOT = '../vue-proj/dist'
STATIC_URL = '/static/'
解决方案
尝试这个
STATICFILES_DIRS = [
BASE_DIR.parent / "vue-proj/dist/static'",
]
静态根用于生产,它将从静态文件夹收集所有 css 和 js 到静态根目录。
STATIC_ROOT = BASE_DIR.parent / "static_cdn"
推荐阅读
- python - 基于公共辅助列从数据框中的列生成值列表的有效方法
- tensorflow - KeyError:使用 Huggingface Transformers 使用 BioASQ 数据集时出现“答案”错误
- python - 使用唯一 url (python) 抓取网站
- google-apps-script - 如何在同一个 Google Drive 中共享 google sheet 宏?
- gremlin - 如何在gremlin中进行遍历的交集
- javascript - 如何检查复选框是否被选中?
- python - 在 Python2.7 中应用 Async
- sql - PostgreSQL 随机化外键
- oauth-2.0 - OAuth-2.0/JWT - 关于何时使用范围与角色的指南
- python - Pandas 合并/过滤数据框