Sha256: 14e841271e1ac36f0120179dcea777f78f23852661b06a0627f13daa1f041cb6

Contents?: true

Size: 1 KB

Versions: 10

Compression:

Stored size: 1 KB

Contents

class User < ActiveRecord::Base
  has_many :posts
  has_many :dogs, :foreign_key => :owner_id, :class_name => "Pets::Dog"

  has_many :friendships
  has_many :friends, :through => :friendships

  has_one :address, :as => :addressable, :dependent => :destroy

  named_scope :old,      :conditions => "age > 50"
  named_scope :eighteen, :conditions => { :age => 18 }
  named_scope :recent,   lambda {|count| { :limit => count } }

  def self.recent_via_method(count)
    scoped(:limit => count)
  end

  attr_protected :password
  attr_readonly :name

  validates_format_of :email, :with => /\w*@\w*.com/
  validates_length_of :email, :in => 1..100
  validates_numericality_of :age, :greater_than_or_equal_to => 1,
                                  :less_than_or_equal_to    => 100
  validates_acceptance_of :eula
  validates_uniqueness_of :email, :scope => :name, :case_sensitive => false
  validates_length_of :ssn, :is => 9, :message => "Social Security Number is not the right length"
  validates_numericality_of :ssn
end

Version data entries

10 entries across 10 versions & 5 rubygems

Version Path
Flamefork-shoulda-2.10.1 test/rails_root/app/models/user.rb
Flamefork-shoulda-2.10.2 test/rails_root/app/models/user.rb
francois-shoulda-2.10.1 test/rails_root/app/models/user.rb
technicalpickles-shoulda-2.10.0 test/rails_root/app/models/user.rb
thoughtbot-shoulda-2.10.0 test/rails_root/app/models/user.rb
thoughtbot-shoulda-2.10.1 test/rails_root/app/models/user.rb
thoughtbot-shoulda-2.9.2 test/rails_root/app/models/user.rb
shoulda-2.9.2 test/rails_root/app/models/user.rb
shoulda-2.10.0 test/rails_root/app/models/user.rb
shoulda-2.10.1 test/rails_root/app/models/user.rb