我理解的 can 操作,会对访问每个 action 前 进行权限校验 但是有时候一些属性是在 action 里面给对象赋值的,比如下面的 company_id 和 team_id 这样在校验的时候 就拿不到 这两个属性值,can 方面里面就会返回 false,像这种情况一般是怎么解决的?还是我的用法不对?
can :create, Customer do |c|
user.company_id == c.company_id && user.team_id == c.team_id
end