Rails 尽管电子邮件发送正确,但查找 actionmailer 模板时出错
Rails error finding actionmailer template despite email sending correctly
我有一个 rails 应用程序 运行 用于带有邮件的乘客。我有它,所以操作后的页面显示电子邮件内容,但我收到此错误:
Missing template rfis/mail, application/mail with {:locale=>[:en], :formats=>[:html], :variants=>[], :handlers=>[:erb, :builder, :raw, :ruby, :coffee, :slim, :jbuilder]}. Searched in: * "/var/www/rqm3/app/views" * "/usr/local/rvm/gems/ruby-2.1.5/gems/devise-3.5.1/app/views" * "/usr/local/rvm/gems/ruby-2.1.5/gems/twitter-bootstrap-rails-3.2.0/app/views"
尽管如此,电子邮件在发送时确实正确加载了模板。它只是在导致问题的视图中显示它。
rfis_controller.rb:
def mail
@mail_message = RfiMailer.send_rfi(current_user, @rfi).deliver
end
rfi_mailer.rb:
class RfiMailer < ApplicationMailer
default from:"testemail@mail.com"
def send_rfi(user, rfi)
mail(to:"other@test.com")
end
end
send_rfi.html.erb:
test
问题是由于您没有在方法中重定向任何内容 "mail" 在控制器中定义
def mail
@mail_message = RfiMailer.send_rfi(current_user, @rfi).deliver
redirect_to @user, notice: "Message sent successfully ."
end
你也可以定义 render nothing
我有一个 rails 应用程序 运行 用于带有邮件的乘客。我有它,所以操作后的页面显示电子邮件内容,但我收到此错误:
Missing template rfis/mail, application/mail with {:locale=>[:en], :formats=>[:html], :variants=>[], :handlers=>[:erb, :builder, :raw, :ruby, :coffee, :slim, :jbuilder]}. Searched in: * "/var/www/rqm3/app/views" * "/usr/local/rvm/gems/ruby-2.1.5/gems/devise-3.5.1/app/views" * "/usr/local/rvm/gems/ruby-2.1.5/gems/twitter-bootstrap-rails-3.2.0/app/views"
尽管如此,电子邮件在发送时确实正确加载了模板。它只是在导致问题的视图中显示它。
rfis_controller.rb:
def mail
@mail_message = RfiMailer.send_rfi(current_user, @rfi).deliver
end
rfi_mailer.rb:
class RfiMailer < ApplicationMailer
default from:"testemail@mail.com"
def send_rfi(user, rfi)
mail(to:"other@test.com")
end
end
send_rfi.html.erb:
test
问题是由于您没有在方法中重定向任何内容 "mail" 在控制器中定义
def mail
@mail_message = RfiMailer.send_rfi(current_user, @rfi).deliver
redirect_to @user, notice: "Message sent successfully ."
end
你也可以定义 render nothing