Sha256: 79b17e687c26e9419dc4b92c3ead0c7749d900c45edb12f9945bdf2b31a76af8
Contents?: true
Size: 1.06 KB
Versions: 1
Compression:
Stored size: 1.06 KB
Contents
class Role < ActiveRecord::Base include MasterModel default_scope { order("roles.position") } validates :name, presence: true, format: { with: /\A[A-Za-z][a-z_,]*[a-z]\Z/ } has_many :user_has_roles has_many :users, through: :user_has_roles after_save :clear_all_cache after_destroy :clear_all_cache extend FriendlyId friendly_id :name def localized_name display_name.localize end def self.all_cache if Rails.env == 'production' Rails.cache.fetch('role_all'){ Role.select(:name).all } else Role.select(:name) end end def clear_all_cache Rails.cache.delete('role_all') end def self.default_role Role.where(name: 'Guest').first end private def valid_name? true end end # == Schema Information # # Table name: roles # # id :integer not null, primary key # name :string(255) not null # display_name :string(255) # note :text # created_at :datetime # updated_at :datetime # score :integer default(0), not null # position :integer #
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
enju_leaf-1.1.0.rc17 | app/models/role.rb |