Rails 4.1是否还有asset_path助手?

时间:2014-08-29 07:55:20

标签: ruby-on-rails-4 select2-rails

upgrade guide声明

  

Rails 4.0删除了ActionController :: Base.asset_path选项。使用资产管道功能。

我目前正在从Rails 3.2升级到Rails 4.1。在我的应用程序中,我使用select2-rails gem,在我的js中,我为选择菜单选项添加了一个图像:

//mycode.js.erb
function format(image) {
    var image_path = "<%= asset_path('" + image.id.toLowerCase() +"') %>"
    return "<img class='flag' src='" + image_path + "' />";
}

以上工作在我的Rails 3.2应用程序中,但我似乎已经打破它升级到4.1,现在收到以下错误:

Sprockets::FileNotFound - couldn't find file '" + image.id.toLowerCase() +"'

在Rails 4.1中,asset_path帮助程序是否仍然可用?如果是的话,任何关于我可能出错的想法?​​

更新

上面的代码在我的.js.erb文件中,它允许我在我的js文件中包含Ruby代码。这在我的Rails 3.2项目中目前运行良好。我正在这样做,因为select2允许我们按照以下示例格式化我们的选择菜单项的显示:

//sample.js
function format(state) {
  if (!state.id) return state.text; // optgroup
  return "<img class='flag' src='images/flags/" + state.id.toLowerCase() +   ".png'/>" + state.text;
}

我的理解是,使用资产管道路径是正确的,而不是手动添加类似资产/图像/图标/小&#39;

0 个答案:

没有答案