我用脚手架创建了一个简单的帖子控制器,如果有人访问索引页面,我想发送邮件
我生成了一个TestMail类:
class TestMail < ActionMailer::Base
def welcome_email(sent_on)
recipients 'lorem@ipsum.sa'
from "My Awesome Site Notifications <notifications@example.com>"
subject "Welcome to My Awesome Site"
sent_on Time.now
end
end
但是如果我在Post控制器中调用此方法
asd=TestMail.welcome_email(Time.now)
我收到NoMethod错误:
NoMethodError in PostsController#index
undefined method `welcome_email' for TestMail:Class
怎么了?
答案 0 :(得分:2)
您正在使用Rails 3语法。
使用Rails 2.3,您需要使用deliver_
或create_
。
# creates and delivers the email
TestMail.deliver_welcome_email(Time.now)
# creates the email
email = TestMail.create_welcome_email(Time.now)