Вам понадобятся миграции как для отслеживаемых, так и: подтверждаемых в любом случае для вашей БД.
Разве не было бы проще просто определить подтверждаемый для обоих случаев, но в случае, если он вам не нужен, вы можете автоматически подтвердить учетную запись пользователя из контроллера после создания пользователя?
см
https://github.com/plataformatec/devise/blob/master/lib/devise/models/confirmable.rb
строки 27..30 содержат хуки before_create и after_create
вам нужно будет сделать эту модификацию:
вам нужно переопределить: translation_required? , так что он возвращает истину
только в тех случаях, когда вы хотите, чтобы был создан токен подтверждения и отправлено электронное письмо с подтверждением.
В случае, если вам не нужно подтверждение по электронной почте, вы можете сделать user.confirm! после создания учетной записи пользователя.
Вы можете добавить это как дополнительное действие after_create.
, например
module Devise
module Models
module Confirmable
after_create :confirm! , :if => :confirmation_not_required? # you'll need to define that method
private
def confirmation_required? # overriding the default behavior
your_special_conditions && !confirmed?
end
def confirmation_not_required?
! confirmation_required?
end
end
end
end
Примечание:
Вместо user.confirm! Вы также можете использовать user.skip_confirmation!