Ruby on rails actionmailer基于.LTD app.com/app.fr设置主机动态
我有两种不同的语言在我的rails应用程序,并希望能够设置域名设置在正确的语言。例如,如果用户从app.FR注册,我希望在下面的示例中使用扩展名.FR而不是.COM,有没有办法做到这一点Ruby on rails actionmailer基于.LTD app.com/app.fr设置主机动态,ruby-on-rails,ruby-on-rails-3,internationalization,actionmailer,i18n-gem,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'} 解决方案似乎是在ApplicationController中设置一
config.action_mailer.asset_host = "http://app.com"
config.action_mailer.default_url_options = {:host => 'app.com'}
解决方案似乎是在ApplicationController中设置一个before筛选器,并生成如下函数:
def set_mailer_host
ActionMailer::Base.default_url_options[:host] = request.host_with_port
end
请记住,当从rails控制台发送邮件时,这将不起作用,因为rails控制台不会通过真正的ActionController。似乎有。