Ruby 发送邮件需要SMTP发件人地址。设置邮件smtp\u信封\u发件人、返回路径、发件人或发件人地址

Ruby 发送邮件需要SMTP发件人地址。设置邮件smtp\u信封\u发件人、返回路径、发件人或发件人地址,ruby,ruby-on-rails-4,spree,spree-auth-devise,spree-paypal-express,Ruby,Ruby On Rails 4,Spree,Spree Auth Devise,Spree Paypal Express,在Spree 3.0中,“邮件方法设置”默认不可用 Rails版本4.2.0 使用管理面板中的“gem”spree\u mail\u settings、“github:“spree contrib/spree\u mail\u settings”分支“3-0-stable”在配置菜单“邮件方法设置”中生成一个链接 所有配置完成。但当点击“测试邮件”按钮时,它给出了错误信息 “发送邮件需要SMTP发件人地址。请设置邮件SMTP\u信封\u发件人、返回路径、发件人或发件人地址。”我认为这是一个完全错

在Spree 3.0中,“邮件方法设置”默认不可用

Rails版本4.2.0

使用管理面板中的“gem”spree\u mail\u settings、“github:“spree contrib/spree\u mail\u settings”分支“3-0-stable”在配置菜单“邮件方法设置”中生成一个链接

所有配置完成。但当点击“测试邮件”按钮时,它给出了错误信息
“发送邮件需要SMTP发件人地址。请设置邮件SMTP\u信封\u发件人、返回路径、发件人或发件人地址。”

我认为这是一个完全错误的答案,但这就是我在测试中通过此问题的原因。我必须硬编码“发件人地址”,以便确认电子邮件方法是否符合我在管理部分输入的内容。这是我的密码:

  def confirm_email(order, resend = false)
    @order = order.respond_to?(:id) ? order : Spree::Order.find(order)
    subject = (resend ? "[#{Spree.t(:resend).upcase}] " : '')
    subject += "#{Spree::Store.current.name} #{Spree.t('order_mailer.confirm_email.subject')} ##{@order.number}"
    mail(to: @order.email, from: 'yourfromaddress@yourdomain.com', subject: subject)
  end

您可能认为应该有一种简单的方法来设置测试配置的此值,但我想不出来。

我建议不要使用spree\u mail\u设置,也不要使用ActionMailer配置邮件。spree_mail_设置适用于spree的旧版本,由于类似这样的混乱,已从主代码库中删除。我猜Rails 4.2的spree\u mail\u设置尚未更新。如果你打算使用这个项目,你应该提交一个问题。