You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Rails中ActionMailer执行报错:缺失user_mailer/welcome模板

问题原因与解决办法

你遇到的Missing template错误,核心是Rails找不到UserMailer#welcome方法对应的邮件内容模板。

在Rails的ActionMailer机制里,每个邮件发送方法(比如你写的welcome)都需要在app/views/[mailer名称]/目录下,有同名的视图文件来定义邮件的具体内容——你现在只创建了邮件的布局模板(layouts里的mailer.html.erb是所有邮件共用的框架),但缺少welcome方法对应的内容模板。

解决步骤:

  1. 先在项目里创建app/views/user_mailer目录(因为你的mailer是UserMailer,对应这个视图目录)
  2. 在该目录下创建两个模板文件(至少创建一个,建议两个都做,适配不同邮箱客户端):
    • HTML格式模板:app/views/user_mailer/welcome.html.erb
      示例内容:
      <h1><%= @greeting %></h1>
      <p>这是你的欢迎邮件,很高兴你能来!</p>
      
    • 纯文本格式模板:app/views/user_mailer/welcome.text.erb
      示例内容:
      <%= @greeting %>
      这是你的欢迎邮件,很高兴你能来!
      

完成后重新执行UserMailer.welcome.deliver_now,错误就会消失。

内容的提问来源于stack exchange,提问作者jlandie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 07:30:50