Не требовать от пользователей подтверждения электронной почты с помощью Devise

Я использую Devise в проекте Rails 3 (3.0.5). Я хочу использовать подтверждаемый модуль, чтобы позволить пользователям подтверждать свой адрес электронной почты, однако я не хочу блокировать их, если они не подтвердят.

В настоящее время я сделал это, установив (в devise.rb)

config.confirm_within = 100.years

Есть ли более приятный способ сделать это?


person Laurie Young    schedule 21.03.2011    source источник


Ответы (3)


на самом деле в более новых версиях разработки его

config.allow_unconfirmed_access_for = 100.years

А по моему нормальное решение

person Yossi Shasho    schedule 29.08.2012

Теперь вы можете установить для config.allow_unconfirmed_access_for значение nil, чтобы разрешить неподтвержденные входы в систему на неопределенный срок, но при этом запрашивать подтверждение.

https://github.com/plataformatec/devise/pull/2278 https://github.com/plataformatec/devise/blob/master/lib/devise.rb#L142

person Lockyy    schedule 23.09.2014

Извините, но я действительно должен спросить, почему вы используете подтверждаемый модуль, если вы все равно собираетесь впустить их? Какую ценность приносит модуль подтверждения, если вы пропускаете людей?

С тем же успехом вы можете сказать user.confirm! в действии создания, чтобы вам не нужно было устанавливать значение 100.years.

person grafikchaos    schedule 10.11.2011
comment
Это просто бизнес-логика, необходимая для этого проекта: не блокируйте пользователей, которые не подтверждают, вместо этого предложите им стимулы для подтверждения. - person Laurie Young; 14.11.2011