Sha256: 8c8c9abea4d14d733e06972b26664a9edbf875f6c6b10060edaf46bea22d16ec
Contents?: true
Size: 701 Bytes
Versions: 6
Compression:
Stored size: 701 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| role = role_class_name.create(:name => name.to_s) role.save end end end end class Role include DataMapper::Resource property :id, Serial property :name, String class << self def find_roles(*role_names) all(: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
6 entries across 6 versions & 1 rubygems