我在 Ruby on rails 3.1 上使用 declarative_authorization。
一个组有许多专辑(groupalbum),一个组由一个用户创建(组表外键中的user_id)。只有群组的所有者才能创建相册。
这是我的 authorization_rules.rb :
has_permission_on [:group_albums], :to => [:create] do
if_attribute :group => { :user => is_in { user.groups } }
end
这是我的 GroupAlbumsControler :
class GroupAlbumsController < ApplicationController
before_filter :set_group_album_from_params, :only => :show
before_filter :set_group_album_new, :only => [:index, :new]
filter_access_to :all, :attribute_check => true
(...)
end
但它不起作用:
You are not allowed to access this action.
即使我与组的所有者登录。
我的错误在哪里?