Rails 2.3.8 mail NoMethod error - PullRequest
       1

Rails 2.3.8 mail NoMethod error

1 голос
/ 26 декабря 2010


Я создал простой почтовый контроллер со скаффолдингом и хочу отправить письмо, если кто-то посещает страницу индекса.
Я сгенерировал класс 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 controller

asd=TestMail.welcome_email(Time.now)

Я получил ошибку NoMethod:

NoMethodError in PostsController#index

undefined method `welcome_email' for TestMail:Class

Что не так?

1 Ответ

2 голосов
/ 26 декабря 2010

Вы используете синтаксис 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)
...