我想知道是否可以使用 Devise 有选择地要求确认某些控制器操作。
基本上:我希望用户注册一个帐户(这将触发一封确认电子邮件),自动登录,并能够以已登录(但仍未确认)用户的身份立即浏览网站的某些部分。访问某些区域(例如,支付)需要用户首先确认他们的电子邮件。
我希望有类似的东西before_filter: user_is_confirmed, only: [payment_related_stuff]
我搜索了一段时间,找不到开箱即用的方法,所以我想创建一个 hacky 解决方案,其中所有可能的保护区仍然需要before_filter: authenticate!
,但我会覆盖 Devise SessionsController 的创建以允许访问某些确认前的区域。但是,我不确定这是否是正确的方法。