Accessing Radiant's User Model

johnmuhl edited this page Aug 24, 2010 · 1 revision

Example Code

# User(id: integer, name: string, email: string, login: string, password: string, created_at: datetime, updated_at: datetime, created_by_id: integer, updated_by_id: integer, admin: boolean, developer: boolean, notes: text, lock_version: integer, salt: string, session_token: string)

class User < ActiveRecord::Base

  # Default Order
  order_by 'name'

  # Associations
  belongs_to :created_by, :class_name => 'User'
  belongs_to :updated_by, :class_name => 'User'

  # Validations
  validates_uniqueness_of :login, :message => 'login already in use'

  validates_confirmation_of :password, :message => 'must match confirmation', :if => :confirm_password?

  validates_presence_of :name, :login, :message => 'required'
  validates_presence_of :password, :password_confirmation, :message => 'required', :if => :new_record?

  validates_format_of :email, :message => 'invalid e-mail address', :allow_nil => true, :with => /^$|^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i

  validates_length_of :name, :maximum => 100, :allow_nil => true, :message => '%d-character limit'
  validates_length_of :login, :within => 3..40, :allow_nil => true, :too_long => '%d-character limit', :too_short => '%d-character minimum'
  validates_length_of :password, :within => 5..40, :allow_nil => true, :too_long => '%d-character limit', :too_short => '%d-character minimum', :if => :validate_length_of_password?
  validates_length_of :email, :maximum => 255, :allow_nil => true, :message => '%d-character limit'

  validates_numericality_of :id, :only_integer => true, :allow_nil => true, :message => 'must be a number'
  ...
end
Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.