无法发送邮件到期"没有将符号隐式转换为整数"错误

时间:2016-01-30 21:52:50

标签: ruby-on-rails

development.rb 文件中的配置

  config.action_mailer.default_url_options = { host: 'localhost', port: 3000 }
  config.action_mailer.perform_deliveries = true
  config.action_mailer.delivery_methods = :smtp
  config.action_mailer.smtp_settings = {
      address: "my.smtp.com",
      port: 25,
      authentication: "plain",
      domain: "example.com",
      openssl_verify_mode: :none,
      enable_starttls_auto: false,
      user_name: "username",
      password:  "password"
  }

我控制器中的代码:

mail(:to => "example@gmail.com", :subject => "test")

我已安装:

  

ruby​​ 2.0 rails(4.1.0)actionmailer(= 4.1.0)

3 个答案:

答案 0 :(得分:0)

控制器代码对我来说似乎不对... 试试这个吗?

mail(:to => "example@gmail.com", :subject => "test")

答案 1 :(得分:0)

根据ActionMailer文档,http://guides.rubyonrails.org/action_mailer_basics.html#action-mailer-configuration 'none'应该使用字符串OpenSSL::SSL::VERIFY_NONE或openssl gem中的config.action_mailer.smtp_settings = { address: "my.smtp.com", port: 25, authentication: "plain", domain: "example.com", openssl_verify_mode: OpenSSL::SSL::VERIFY_NONE, enable_starttls_auto: false, user_name: "username", password: "password" } 常量。我认为这就是你如何得到“没有将符号隐式转换为整数”的错误。就我个人而言:

xtype *pNamesPtr = NULL

答案 2 :(得分:0)

在定义actionmailer交付方法时,您看起来有拼写错误。尝试使用delivery_method的单数形式:

config.action_mailer.delivery_method = :smtp