これは私の Ability.rb ファイルです:
class Ability
include CanCan::Ability
def initialize(user)
user.permissions.each do |permission|
can permission.action.to_sym,
permission.thing_type.constantize {|thing| thing.nil? || permission.thing.nil? || permission.thing_id == thing.id}
end
end
end
モノは多態的な関連付けです。ブロックを can に渡す方法を理解しようとしています。ウィキ全体で CanCan を検索しましたが、説明を見つけることができませんでした。