Использование подтверждающего (разработанного) модуля после регистрации

Я использую подтверждаемый в одной из пользовательских моделей, но идея здесь другая. Пользователь не обязан подтверждать свою учетную запись во время регистрации, он может подтвердить это позже, нажав на кнопку подтверждения. Я прочитал документацию по устройству, но не нашел ни одной детали, подходящей для моего сценария. Может ли кто-нибудь предоставить какие-либо ссылки или предложения по тому же. Заранее спасибо:)

Обновление -

Пользователь сможет войти в свою учетную запись и выполнять все виды операций без подтверждения своей электронной почты. Но подтверждение его почты добавит тег с именем подтверждено в его аккаунт. Это то, что я пытаюсь сделать.

1 ответ

Решение

Я думаю, что вы можете делать то, что вы хотите, установив allow_unconfirmed_access_for в nil в вашем devise.rb инициализатора:

config.allow_unconfirmed_access_for = nil

Письмо с подтверждением по-прежнему будет отправлено, но им не нужно будет нажимать на ссылку, прежде чем войти в систему. Они могут щелкнуть по ссылке в любое время в будущем, и когда они это сделают, confirmed_at время в их записи пользователя будет установлено и user.confirmed? will then returntrue`.

Убедитесь, что вы не установили confirm_within в вашем devise.rb инициализатор, или, если он есть, убедитесь, что он nil, Я не думаю, что он там по умолчанию, но, возможно, стоит проверить, есть ли у вас проблемы.

ОБНОВИТЬ

Поскольку вы не хотите отправлять электронное письмо, вам нужно позвонить skip_confirmation_notification! во время процесса регистрации, а также, если они могут редактировать свой адрес электронной почты, и вы используете повторно подтверждаемые. Это означает, что электронное письмо не будет отправлено, но аккаунту все равно потребуется подтверждение. Тем не менее, потому что вы установили allow_unconfirmed_access_for в nilне будет необходимости. Тогда вы могли бы предоставить кнопку или что-то на вашем сайте, когда они вошли в систему, чтобы позволить им отправить электронное письмо, и когда он нажал, вам нужно будет позвонить current_user.send_confirmation_instructions,

Другие вопросы по тегам