【发布时间】:2013-08-17 15:42:38
【问题描述】:
我正在构建一个为单页 Angular 应用提供服务的 Django 应用。
Django 服务的 Angular 的 index.html 具有以下 usemin 脚本块:
<!-- build:js scripts/scripts.js -->
<script src="{% static "scripts/app.js" %}"></script>
<script src="{% static "scripts/controllers/main.js" %}"></script>
<script src="{% static "scripts/controllers/stats.js" %}"></script>
<script src="{% static "scripts/directives/highchart.js" %}"></script>
<!-- endbuild -->
Usemin 尝试在文件系统上查找“{% static "scripts/app.js" %}”,当然失败了,因为它真正应该尝试查找的是“scripts/app.js”。
有没有人看到解决方法?
【问题讨论】:
-
您是否使用
grunt build构建了站点,不应该向客户端提供usemin 块,这仅用于grunt,与后端无关(afaik)。 -
我正在尝试利用 Django 对静态 url 的反向 url 查找,所以我从 Django 路由提供 Angular 的 index.html,这允许我在 index.html 中使用 Django 模板标签。 html。我已经放弃了,现在将从静态 url 访问 index.html,而不是正确的 Django 路由。我会咬紧牙关,如果我的静态文件 url 发生变化,我会手动更新 index.html。
-
@davemckenna01 自从您最初问到 8 月以来,您在这方面有什么新发现吗?我目前正在将 grunt/yeoman 与 Angular 一起使用,并将工作流与 django 集成让我的速度慢了很多。
-
@kvseelbach 我也有同样的问题。您找到解决方法了吗?
-
@lakenen 我想继续使用 Grunt 和生成器,所以我编辑了配置并安装了 grunt-text-replace 并设置了一些搜索/替换。
replace: { example: { src: ['<%= yeoman.dist %>/*.html'], overwrite: true, replacements: [{ from: '<script src="scripts', to: '<script src="/static/mdb/scripts' }] } }
标签: django angularjs django-templates gruntjs grunt-usemin