1

我想知道是否可以使用 Devise 有选择地要求确认某些控制器操作。

基本上:我希望用户注册一个帐户(这将触发一封确认电子邮件),自动登录,并能够以已登录(但仍未确认)用户的身份立即浏览网站的某些部分。访问某些区域(例如,支付)需要用户首先确认他们的电子邮件

我希望有类似的东西before_filter: user_is_confirmed, only: [payment_related_stuff]

我搜索了一段时间,找不到开箱即用的方法,所以我想创建一个 hacky 解决方案,其中所有可能的保护区仍然需要before_filter: authenticate!,但我会覆盖 Devise SessionsController 的创建以允许访问某些确认前的区域。但是,我不确定这是否是正确的方法。

4

1 回答 1

4

在设计中使用内置解决方案,您可以与之前的过滤器allow_unconfirmed_access_for 1.year结合使用current_user.confirmed?

于 2012-07-23T20:04:44.290 回答