Sha256: aa28d4df54dc8a4d705e51d107962f21e9876e851d7039ad789a27e841c59831
Contents?: true
Size: 755 Bytes
Versions: 1
Compression:
Stored size: 755 Bytes
Contents
module Roles::Base def valid_roles_are(*role_list) strategy_class.valid_roles = role_list.to_symbols if role_class_name role_list.each do |name| begin role_class_name.create(:name => name.to_s) # if !role_class_name.where(:name => name.to_s).first rescue # puts "Role name: #{name} is a duplicate" end end end end end module RoleClass module ClassMethods def find_roles(*role_names) where(:name => role_names.flatten) end def find_role role_name raise ArgumentError, "#find_role takes a single role name as argument, not: #{role_name.inspect}" if !role_name.kind_of_label? res = find_roles(role_name) res ? res.first : res end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
roles_active_record-0.5.1 | lib/roles_active_record/role.rb |