首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >未使用asset_host的邮件程序中的image_tag

未使用asset_host的邮件程序中的image_tag
EN

Stack Overflow用户
提问于 2011-04-21 13:11:01
回答 3查看 27.4K关注 0票数 55

image_tag没有使用我设置的asset_host。你知道为什么吗?我能想到的唯一一件事就是它和一个邮递员有关。

config/environment/development.rb

config.action_controller.asset_host = "http://localhost:3000"

myMailer.rb

<%= image_tag "logo.png", :style=>"margin-left:10px; padding-bottom:15px;" %>

呈现为:的

<img alt="Logo" src="/images/logo.png?1303090162" style="margin-left:10px; padding-bottom:15px;" />

控制台中的:

> MyApp::Application.config.action_controller
#<OrderedHash {… :asset_host=>"http://localhost:3000", …}>

我需要的image_tag来创建一个完整的路径网址,因为它将在电子邮件中显示。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-04-23 04:49:11

我之前错了。这就是您需要的解决方案(直到rails 3.1,其中asset_host配置变得统一):

config.action_mailer.asset_host = "http://localhost:3000"
票数 94
EN

Stack Overflow用户

发布于 2012-09-18 22:56:55

在Rails3.1和3.2中,我们需要同时指定config.action_controller.asset_host和config.action_mailer.asset_host。

要在电子邮件和非电子邮件视图中将主机名添加到image_tag,请将以下内容添加到环境文件中:

config.action_controller.asset_host = 'http://localhost:3000'
config.action_mailer.asset_host = config.action_controller.asset_host

其中'http://localhost:3000‘应替换为您的主机URL (以及端口,如果适用)。

这需要在action_controller和action_mailer上设置,甚至在Rails 3.2.x中也是如此。

票数 22
EN

Stack Overflow用户

发布于 2011-04-21 20:11:11

关于为什么你不能这样做的令人不快的代码如下:

# actionpack/lib/action_view/helpers/asset_paths.rb, line 27
def compute_public_path(source, dir, ext = nil, include_host = true)
  # More code up here....

    if controller && include_host
      has_request = controller.respond_to?(:request)
      source = rewrite_host_and_protocol(source, has_request)
    end
end

下面是GH上的违规文件:https://github.com/rails/rails/blob/master/actionpack/lib/action_view/helpers/asset_paths.rb

由于ActionMailer视图模板缺少控制器,因此您无法获得基于asset_host重写的命令。这可能是对Rails核心团队开放的一张门票。

您可以尝试以下配置,看看是否有帮助:

config.action_mailer.default_url_options = {:host=>"localhost", :port=>3000, :protocol=>"http://"}

不过,我很确定它只会对url_for起作用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5739819

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档