【发布时间】:2015-10-01 19:49:03
【问题描述】:
我在我的控制器中使用 image_path:
class ArchivesController < ApplicationController
include ActionView::Helpers::AssetUrlHelper
def create
@archive = Archive.new(file: params[:file])
render json: {ico: image_path('docs/pdf.png')}
end
end
但我的回报是{ico: '/images/docs/pdf.png'}。
当我在我的视图中使用 image_path('docs/pdf.png') 时,网址是“/docs/pdf.png”并且有效。
为什么在我的控制器中 url 不同?
【问题讨论】:
-
当你在控制器中添加这样的斜线 '/docs/pdf.png' 会发生什么
-
我不确定它们为什么不同,但您可以使用
view_context.image_path 'pdf.png'而不包括帮助程序库。 -
谢谢@mmichael!!使用 view_context.image_path 工作。我不知道我可以使用 view_context。非常非常感谢。
-
我相信你需要 "ActionController::Base.helpers.asset_path(fileHere) 。查看这篇文章了解更多信息:stackoverflow.com/questions/7827078/…
标签: ruby-on-rails ruby-on-rails-4 asset-pipeline