adding ability generator - closes #170
This commit is contained in:
parent
37c149182c
commit
9b8e84944c
4
lib/generators/cancan/ability/USAGE
Normal file
4
lib/generators/cancan/ability/USAGE
Normal file
|
@ -0,0 +1,4 @@
|
|||
Description:
|
||||
The cancan:ability generator creates an Ability class in the models
|
||||
directory. You can move this file anywhere you want as long as it
|
||||
is in the load path.
|
11
lib/generators/cancan/ability/ability_generator.rb
Normal file
11
lib/generators/cancan/ability/ability_generator.rb
Normal file
|
@ -0,0 +1,11 @@
|
|||
module Cancan
|
||||
module Generators
|
||||
class AbilityGenerator < Rails::Generators::Base
|
||||
source_root File.expand_path('../templates', __FILE__)
|
||||
|
||||
def generate_ability
|
||||
copy_file "ability.rb", "app/models/ability.rb"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
28
lib/generators/cancan/ability/templates/ability.rb
Normal file
28
lib/generators/cancan/ability/templates/ability.rb
Normal file
|
@ -0,0 +1,28 @@
|
|||
class Ability
|
||||
include CanCan::Ability
|
||||
|
||||
def initialize(user)
|
||||
# Define abilities for the passed in user here. For example:
|
||||
#
|
||||
# user ||= User.new # guest user (not logged in)
|
||||
# if user.admin?
|
||||
# can :manage, :all
|
||||
# else
|
||||
# can :read, :all
|
||||
# end
|
||||
#
|
||||
# The first argument to `can` is the action you are giving the user permission to do.
|
||||
# If you pass :manage it will apply to every action. Other common actions here are
|
||||
# :read, :create, :update and :destroy.
|
||||
#
|
||||
# The second argument is the resource the user can perform the action on. If you pass
|
||||
# :all it will apply to every resource. Otherwise pass a Ruby class of the resource.
|
||||
#
|
||||
# The third argument is an optional hash of conditions to further filter the objects.
|
||||
# For example, here the user can only update published articles.
|
||||
#
|
||||
# can :update, Article, :published => true
|
||||
#
|
||||
# See the wiki for details: https://github.com/ryanb/cancan/wiki/Defining-Abilities
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue
Block a user