Sha256: fdbc4813540613483548522efcc711ca41abccfe6b6389faecc55980faf06b10
Contents?: true
Size: 718 Bytes
Versions: 5
Compression:
Stored size: 718 Bytes
Contents
module Homeland::Note class Ability include CanCan::Ability attr_reader :user def initialize(u) @user = u if @user.blank? roles_for_anonymous elsif @user.roles?(:member) roles_for_members else roles_for_anonymous end end protected # 普通会员权限 def roles_for_members can :create, Note can [:update, :destroy, :read], Note, user_id: user.id can :read, Note, publish: true basic_read_only end # 未登录用户权限 def roles_for_anonymous cannot :manage, Note basic_read_only end def basic_read_only can :preview, Note can :read, Node end end end
Version data entries
5 entries across 5 versions & 1 rubygems