我在我的rails应用程序中有动态主机,根据我发送邮件,我正在使用actionmailer,在视图中我想链接一些链接。
notification_mailer.rb
class NotificationMailer < ApplicationMailer
def new(email)
@url = root_url
mail(to: email, subject: 'XYZ')
end
new.html.erb
<%= link_to 'visit', @url %>
application_controller.rb
before_action :mailer_set_url_options
ActionMailer::Base.default_url_options[:host] = request.host_with_port
我提供了所需的一切,但仍然收到错误,没有找到主机。我正在打电话给sidekiq的通知邮件。
答案 0 :(得分:0)
尝试在调用邮件程序操作时传递请求。
class Your_MailerClass < ActionMailer::Base
def your_mailer_action(request)
Your_MailerClass.default_url_options[:host] = request.host_with_port
end
end