actionmailer基于.LTD app.com/ app.fr设置主机动态

时间:2012-06-27 09:55:21

标签: ruby-on-rails ruby-on-rails-3 internationalization actionmailer i18n-gem

我在我的rails应用程序中有两种不同的语言,并希望能够使用正确的语言设置域名。例如,如果用户从app.FR注册我想在下面的示例中使用扩展名.FR而不是.COM有没有办法做到这一点?

  config.action_mailer.asset_host = "http://app.com"
  config.action_mailer.default_url_options = {:host => 'app.com'}

1 个答案:

答案 0 :(得分:1)

似乎解决方案是在ApplicationController中设置一个before过滤器并创建一个类似的函数:

  def set_mailer_host
    ActionMailer::Base.default_url_options[:host] = request.host_with_port
  end

请记住,当从rails控制台发送邮件时,这将无效,因为rails控制台无法传递真正的ActionController。