2017-04-26 8 views
-1

이 같은 Sidekiq를 사용하여 이메일을 보내도록 노력하고 있어요 :Sidekiq 오류 NoMethodError : 정의되지 않은 메서드` "AdminMailer"에 대한 send_welcome_email ': 문자열

AdminMailer.delay.send_welcome_email(1) 

하지만이 오류가 점점 오전 :

NoMethodError: undefined method `:send_welcome_email' for 
"AdminMailer":String 

최근 Rails 3.2에서 Rails 4.0으로 업그레이드했고 Ruby 버전은 2.1.1입니다. 업그레이드가 끝난 후이 문제가 발생했습니다.

어떻게 해결할 수 있습니까?

답변

0

Sidekiq에는 다른 구문이 있습니다. 당신은 다음과 같이 수행해야합니다

AdminMailer.send_welcome_email(1).deliver_later 

는 "Sending emails with ActionMailer and Sidekiq"의 사례가있다.

+0

감사합니다. nautgrad. 그러나 위의 문서에 따르면 구문이 작동해야한다고 나와 있습니다. 그리고 그것은 이전 버전에서 작동하는 데 사용되었습니다. 또한 sidekiq에서 나는 지연과 클래스 메서드를 호출 할 수 있습니까? 심지어 그것은 같은 오류를 던지고있다. –

+0

문제는 루비가 클래스처럼'AdminMailer'를 인식하지 못한다는 것입니다. 이것은 문자열이라고 생각합니다. 이것은 예상 된 동작이 아닙니다. – nautgrad

+0

오, 알았어 ... 나는 거기에있는 방법을 무시하고 다른 방법을 시도해보십시오. 감사합니다. –