用途:为 Rails 应用创建 Action Mailer 邮件,覆盖事务性邮件与用户通知,并配套预览、HTML/文本模板和投递测试。\n\n主要能力:按 Rails 约定生成 mailer 与模板结构(app/mailers、app/views/[mailer_name]、spec/mailers、spec/mailers/previews);提供四种实现模式(简单事务性邮件、带附件、多收件人、条件与本地化);同时创建 HTML 与 text 模板;编写 RSpec 测试,断言收件人、主题、发件人、正文、HTML/text 部分、附件以及 have_enqueued_job 投递任务入队;创建 ActionMailer 预览。\n\n使用方式:测试用 bundle exec rspec spec/mailers/ 或指定文件与行号,如 spec/mailers/entity_mailer_spec.rb:23;预览启动服务器后访问 /rails/mailers 或 /rails/mailers/entity_mailer/created;用 bundle exec rubocop -a app/mailers/ 与 app/views/ 做 lint;在 Rails console(bin/rails console)中手动发信。业务中可在 Service 中调用 EntityMailer.created(entity).deliver_later,或在 Job、模型回调中投递。\n\n限制与边界:不硬编码邮箱地址与 URL;不在请求中同步发信;必须同时提供 text 模板、测试和预览;对外部地址发信或修改邮件配置前需先确认;使用 I18n.t 处理主题与内容,默认主机通过 default_url_options 配置。开发环境可用 letter_opener,测试环境投递方式为 :test。
mailer-agent
智能体与模型
更新于 10-16 06:15