Использование подтверждающего (разработанного) модуля после регистрации
Я использую подтверждаемый в одной из пользовательских моделей, но идея здесь другая. Пользователь не обязан подтверждать свою учетную запись во время регистрации, он может подтвердить это позже, нажав на кнопку подтверждения. Я прочитал документацию по устройству, но не нашел ни одной детали, подходящей для моего сценария. Может ли кто-нибудь предоставить какие-либо ссылки или предложения по тому же. Заранее спасибо:)
Обновление -
Пользователь сможет войти в свою учетную запись и выполнять все виды операций без подтверждения своей электронной почты. Но подтверждение его почты добавит тег с именем подтверждено в его аккаунт. Это то, что я пытаюсь сделать.
1 ответ
Я думаю, что вы можете делать то, что вы хотите, установив allow_unconfirmed_access_for
в nil
в вашем devise.rb
инициализатора:
config.allow_unconfirmed_access_for = nil
Письмо с подтверждением по-прежнему будет отправлено, но им не нужно будет нажимать на ссылку, прежде чем войти в систему. Они могут щелкнуть по ссылке в любое время в будущем, и когда они это сделают, confirmed_at
время в их записи пользователя будет установлено и user.confirmed? will then return
true`.
Убедитесь, что вы не установили confirm_within
в вашем devise.rb
инициализатор, или, если он есть, убедитесь, что он nil
, Я не думаю, что он там по умолчанию, но, возможно, стоит проверить, есть ли у вас проблемы.
ОБНОВИТЬ
Поскольку вы не хотите отправлять электронное письмо, вам нужно позвонить skip_confirmation_notification!
во время процесса регистрации, а также, если они могут редактировать свой адрес электронной почты, и вы используете повторно подтверждаемые. Это означает, что электронное письмо не будет отправлено, но аккаунту все равно потребуется подтверждение. Тем не менее, потому что вы установили allow_unconfirmed_access_for
в nil
не будет необходимости. Тогда вы могли бы предоставить кнопку или что-то на вашем сайте, когда они вошли в систему, чтобы позволить им отправить электронное письмо, и когда он нажал, вам нужно будет позвонить current_user.send_confirmation_instructions
,