【发布时间】:2016-01-25 14:53:48
【问题描述】:
我目前正在保护我的应用程序,以便普通用户无法在 CanCanCan gem 的帮助下创建、编辑、更新或销毁某些对象。我也安装了设计。两种 gem 都提供回调,因此除非满足特定条件,否则用户无法执行某些操作。
class ExampleController < ApplicationController
before_action :authenticate_user!, except: [:index, :show] # Devise
load_and_authorize_resource except: [:index, :show] # CanCanCan
end
在这种特殊情况下,只有管理员身份的用户才能拥有完全访问权限。我想知道在控制器中同时存在两个回调是否有点过头了。
我看到的方式是,如果用户不是管理员并且正在尝试创建一个对象,那么就不需要对它们进行身份验证。我想 100% 确定自己的想法,并确保用户不会为了访问这些页面而采取偷偷摸摸的变通办法。
【问题讨论】:
标签: ruby-on-rails devise callback controller cancan