我正在尝试制作一个MissingImage
类:
class MissingImage
include ActionView::Helpers::AssetUrlHelper
def src format
return asset_path('layout/missing_image.png')
end
end
在模型中使用这样的方法:
def main_image
images.find(&:ismain) || images.first || MissingImage.new
end
问题是 - asset_path
当像这样使用时,只返回字符串而没有任何与资产管道的连接。
建议?
更新
在搞砸之后,我稍微重构了MissingImage
,但它仍然没有在生产中生成签名的资产路径:
class MissingImage
def src format
return ActionController::Base.helpers.asset_path('layout/missing_image.png')
end
end
返回的路径为/assets/layout/missing_image.png
答案 0 :(得分:0)
为了我的目的'/assets/icons/myimage.png'足够好,但听起来你想要完全合格的路径。我想如果你试图得到一个绝对的网址,你可能会有更好的运气。
您可以在config.action_controller.asset_host上设置该选项,然后使用:
#{asset_path( “布局/ missing_image.png”)}
查看此问题的接受答案中的评论 - Rails 3.1 absolute URL to an image