如何有条件地忽略 Rails 中未确认的用户,Devise?

How to conditionally ignore that a user is not confirmed in Rails, Devise?

基本上我所拥有的是用户是在预订时创建的(根据他们的预订详细信息),但他们必须勾选一个选项才能在网站上实际拥有一个帐户。后一类用户需要邮件确认,而前一类则不需要。

如何忽略未根据某些模型属性动态确认用户?

您可以使用 Confirmable 模块中的 skip_confirmation_notification!

这会创建用户,但不会向他们发送确认电子邮件。仍然需要确认用户才能成为设计用户,但您仍然可以使用 user.confirmation_token 检索用户,这将 eq 一个唯一令牌(已确认用户为 NULL),或 user.confirmed_at对于非确认将是 NULL,因为确认时会添加日期。