2016-01-13 6 views
2

После переезда с delayed_job на номер sidekiq пользователь теперь не может получать devise пароль для сброса пароля. Однако все электронные письма, проходящие через пользовательский ActionMailer, работают в полном порядке.delayed_job to sidekiq: Сбросить пароль email не работает

Я проверил все очереди, но не оговорен.

С delayed_job я использовал handle_asynchronously, чтобы заставить его работать

class User < ActiveRecord::Base 
    devise :invitable, :async, :database_authenticatable, :registerable, 
     :recoverable, :rememberable, :trackable, :validatable, :omniauthable 
    handle_asynchronously :send_reset_password_instructions 
end 

Я вижу 2 очереди в sidekiq полотне 1) default 2) mailers

ответ

3

Решенный.

нужно добавить следующий метод в User модели согласно README для Rails 4,2

def send_devise_notification(notification, *args) 
    devise_mailer.send(notification, self, *args).deliver_later 
end