Module: Rolify
- Extended by:
- Configure
- Defined in:
- lib/rolify.rb,
lib/rolify/role.rb,
lib/rolify/utils.rb,
lib/rolify/dynamic.rb,
lib/rolify/finders.rb,
lib/rolify/railtie.rb,
lib/rolify/version.rb,
lib/rolify/resource.rb,
lib/rolify/configure.rb,
lib/rolify/adapters/base.rb,
lib/rolify/adapters/mongoid/scopes.rb,
lib/rolify/adapters/active_record/scopes.rb,
lib/rolify/adapters/mongoid/role_adapter.rb,
lib/generators/rolify/role/role_generator.rb,
lib/rolify/adapters/mongoid/resource_adapter.rb,
lib/rolify/adapters/active_record/role_adapter.rb,
lib/rolify/adapters/active_record/resource_adapter.rb
Defined Under Namespace
Modules: Adapter, Configure, Dynamic, Finders, Generators, Resource, Role, Utils Classes: Railtie
Constant Summary collapse
- VERSION =
"3.2.0"
Instance Attribute Summary collapse
-
#adapter ⇒ Object
Returns the value of attribute adapter.
-
#role_cname ⇒ Object
Returns the value of attribute role_cname.
Instance Method Summary collapse
- #resourcify(options = {}) ⇒ Object
- #role_class ⇒ Object
- #rolify(options = {}) ⇒ Object
- #scopify ⇒ Object
Methods included from Configure
configure, dynamic_shortcuts, dynamic_shortcuts=, orm, orm=, use_defaults, use_dynamic_shortcuts, use_mongoid
Instance Attribute Details
#adapter ⇒ Object
Returns the value of attribute adapter.
12 13 14 |
# File 'lib/rolify.rb', line 12 def adapter @adapter end |
#role_cname ⇒ Object
Returns the value of attribute role_cname.
12 13 14 |
# File 'lib/rolify.rb', line 12 def role_cname @role_cname end |
Instance Method Details
#resourcify(options = {}) ⇒ Object
32 33 34 35 36 37 38 39 40 41 |
# File 'lib/rolify.rb', line 32 def resourcify( = {}) include Resource .reverse_merge!({ :role_cname => 'Role', :dependent => :destroy }) = { :class_name => [:role_cname].camelize, :as => :resource, :dependent => [:dependent] } has_many :roles, self.adapter = Rolify::Adapter::Base.create("resource_adapter", [:role_cname], self.name) self.role_cname = [:role_cname] end |
#role_class ⇒ Object
48 49 50 |
# File 'lib/rolify.rb', line 48 def role_class self.role_cname.constantize end |
#rolify(options = {}) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/rolify.rb', line 14 def rolify( = {}) include Role extend Dynamic if Rolify.dynamic_shortcuts .reverse_merge!({:role_cname => 'Role'}) = { :class_name => [:role_cname].camelize } .merge!({ :join_table => "#{self.to_s.tableize}_#{[:role_cname].tableize}" }) if Rolify.orm == "active_record" .merge!(.select{ |k,v| [:before_add, :after_add, :before_remove, :after_remove].include? k.to_sym }) if Rolify.orm == "active_record" has_and_belongs_to_many :roles, self.adapter = Rolify::Adapter::Base.create("role_adapter", [:role_cname], self.name) self.role_cname = [:role_cname] load_dynamic_methods if Rolify.dynamic_shortcuts end |