我应该如何在视图中访问asset_url助手

时间:2013-02-18 21:11:44

标签: ruby-on-rails ruby-on-rails-3 carrierwave

当我尝试在我的视图中使用asset_url(Rails 3.2)时,我得到一个NoMethodError。 在我的视图中使用AssetUrlHelper的方法需要做些什么?

为了更好地解释这一点,并且可能找到一个替代解决方案:我需要获得一个“资产链接”到使用carrierwave创建的文件附件。 我的模型有一个附件,指向我的资产目录中的文件。我需要绘制一个指向此文件的链接。

= link_to model.name,model.attachment(:size) 给了我/myfiles/model/id/attachment/size.png(这是carrierwave持有的)

= image_tag model.attachment(:size) 给了我想要的http://static_host.com/.../size.png

但我不需要图像标记,但是需要指向资产主机文件的普通链接。

2 个答案:

答案 0 :(得分:0)

我认为帮助器asset_path属于资产文件(例如.css.js),而不属于视图。在视图中使用image_tagstylesheet_include_tag等帮助是合适的。这是资产管道背后的理念 - 简化资产参考。

答案 1 :(得分:0)

以下对我有用:

<%= link_to "link to asset", asset_path(article.image.url) %>

我正在使用回形针,但我怀疑它有多大区别