【发布时间】:2012-01-09 03:35:59
【问题描述】:
我有一个使用 codebrew/backbone-rails 的 Rails 3.1 应用程序。在 .jst.ejs 模板中,我想包含一个图像,如下所示:
<img src="<%= image_path("foo.png") %>"/>
当然,资产助手在 JavaScript 中不可用。
链接 ERB (.jst.ejs.erb) 不起作用,因为 EJS 语法与 ERB 冲突。
这是我所知道的:
- 资产助手在浏览器中不可用,所以我需要在服务器端运行它们。
- 我可以通过让服务器将各种资产路径转储到 HTML 中(通过数据属性或
<script>和 JSON)并在 JS 中读回它们来解决此问题,但这似乎相当笨拙。
有没有办法以某种方式在 EJS 文件中使用资产助手?
【问题讨论】:
-
您还可以使用
_.templateSettingsunderscore.js template function 重新定义 ejs 标签(如果它们确实是 ruby-ejs gem 文档中建议的 Underscore 模板功能的端口),从而允许您使用 @ 987654326@ 或您选择的其他标记
标签: ruby-on-rails backbone.js erb asset-pipeline ejs