正如标题所说,我正在尝试使用Heroku和Rails 3进行简单的电子邮件。我正在使用此Heroku指南:http://devcenter.heroku.com/articles/smtp
这是我的代码:
我生成了一个看起来像这样的邮件:
class Invite < ActionMailer::Base
def signup_notification(user)
recipients "#{user.first_name} <#{user.email}>"
from "Test"
subject "Please activate your new account"
sent_on Time.now
body :var => 'testing'
end
end
我在app/views/invite/signup_notification.rhtml
更新:我发现.rhtml
无法与Rails 3一起使用,所以我只是尝试了.html.erb
,但我得到了相同的错误。
Your account has been created.
Username:
Password:
Visit this url to activate your account:
然后在Heroku控制台中我这样做了:
user = User.new(:first_name => 'Me', :email => 'me@hotmail.com', :login => 'me', :password => '1234')
然后这个:
Invite.deliver_signup_notification(user)
如果收到此错误:
Net::SMTPSyntaxError: 501 Syntax error
/user/ruby1.8.7/lib/ruby/1.8/net/smtp.rb:930:in `check_response`
/user/ruby1.8.7/lib/ruby/1.8/net/smtp.rb:899:in `getok`
/user/ruby1.8.7/lib/ruby/1.8/net/smtp.rb:828:in `mailfrom`
/user/ruby1.8.7/lib/ruby/1.8/net/smtp.rb:653:in `sendmail`
感谢任何想法。
答案 0 :(得分:18)
您的from
无效。请尝试使用'test@example.com'。
答案 1 :(得分:1)
Heroku指南适用于Rails&lt; 3.0。使用Rails guide for 3.0。
答案 2 :(得分:1)
如果要在from
中显示自定义字符串,则可以使用
from "Test <info@domain.com>"
当您发送电子邮件标题时将是测试
答案 3 :(得分:0)
Net::SMTPSyntaxError 501
错误。
发件人地址应为电子邮件地址。任何假电子邮件也会这样做。喜欢:abc@fakemail.com