public
Description: Simple roles for ActiveRecord objects
Homepage:
Clone URL: git://github.com/mintdigital/has_roles.git
name age message
file .gitignore Mon Feb 16 12:25:40 -0800 2009 Package as gem. Move init.rb to rails/init.rb. [dstrelau]
file MIT-LICENSE Mon Feb 16 11:09:08 -0800 2009 Add KZ to license file. [dstrelau]
file Manifest Mon Feb 16 12:25:40 -0800 2009 Package as gem. Move init.rb to rails/init.rb. [dstrelau]
file README Tue Feb 17 08:17:02 -0800 2009 Update README. [dstrelau]
file Rakefile Sat May 30 09:22:38 -0700 2009 Rescue if echoe is not present. [dstrelau]
directory generators/ Mon Feb 16 12:43:21 -0800 2009 Update generator to not require second param. [dstrelau]
file has_roles.gemspec Fri Aug 28 06:26:26 -0700 2009 added clear_roles and bumped version [bob-p]
file install.rb Mon Feb 16 10:46:22 -0800 2009 Initial plugin import. [dstrelau]
directory lib/ Fri Aug 28 06:26:26 -0700 2009 added clear_roles and bumped version [bob-p]
directory rails/ Mon Feb 16 12:25:40 -0800 2009 Package as gem. Move init.rb to rails/init.rb. [dstrelau]
directory tasks/ Mon Feb 16 10:46:22 -0800 2009 Initial plugin import. [dstrelau]
directory test/ Fri Aug 28 06:26:26 -0700 2009 added clear_roles and bumped version [bob-p]
file uninstall.rb Mon Feb 16 10:46:22 -0800 2009 Initial plugin import. [dstrelau]
README
Install
=======

    $ gem source -a http://gems.github.com/
    $ sudo gem install mintdigital-has_roles

    # environment.rb
    config.gem 'mintdigital-has_roles', :lib => 'has_roles'

Example
=======

In an ActiveRecord class:

    has_roles :admin, :moderator

Then run:

    ./script/generate has_roles && rake db:migrate

Now your model has these instance methods:

    add_role(:moderator)    #=> true
    remove_role(:admin)     #=> true (doesn't have role)
    has_role?(:admin)       #=> false
    can_have_role?(:writer) #=> false

    # These are auto-generated based on your defined roles.
    # They just call has_role?(name)
    admin?      #=> false
    moderator?  #=> true

---

Copyright (c) 2008 Krzysztof Zylawy, released under the MIT license