【问题标题】:Rails asset_url not providing correct url in rake taskRails assets_url 没有在 rake 任务中提供正确的 url
【发布时间】:2013-12-24 20:33:42
【问题描述】:

我正在尝试通过 rake 任务将内容从引擎导入我的数据库。 rake 任务拉入的文件包含 erb 和 image 标签。

一切正常,但asset_url 标签没有生成正确的url。例如:

<%= image_tag asset_url('subfolder/Marathon.jpg') %>

生成 url '/subfolder/Marathon.jpg' 而不是 '/assets/subfolder/Marathon.jpg'

我需要在 rake 任务中包含什么内容才能使其正常工作吗?

这是我的 rake 任务的一部分,它加载了内容和图像所在的部分:

task :it => :environment do
  ac = ActionController::Base.new()
  content = ac.render_to_string partial: "subfolder/landing"
  puts content
end

【问题讨论】:

    标签: ruby-on-rails rake asset-pipeline rails-engines


    【解决方案1】:

    你试过了吗

    <%= image_tag 'subfolder/Marathon.jpg' %>
    

    在你的 Rake 任务中

    action_view = ActionView::Base.new(Rails.configuration.paths["app/views"])
    action_view.class_eval do
      include Rails.application.routes.url_helpers
      include ApplicationHelper
    end
    content = action_view.render(:template => 'subfolder/landing', :layout => nil, :format => 'html')
    

    【讨论】:

    • 是的,它产生了相同的结果,但没有在路径中添加“资产”。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-10-26
    • 1970-01-01
    • 2012-12-01
    • 2011-12-03
    • 2016-03-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多