aboutsummaryrefslogblamecommitdiffstats
path: root/activerecord/test/models/car.rb
blob: c4a15a79e2a7aa0c2a05fb4aba4c387db068f0dd (plain) (tree)
1
2
3
4
5
6
7
8
9
                              
                 
                                                                      
                                                                     
                                                                       
                                                                          
 
               
 
                 
                                           
                                                             
 

                                                
 
                                                         
 
   

                   
                                      


                   
                                      
   
class Car < ActiveRecord::Base
  has_many :bulbs
  has_many :all_bulbs, -> { unscope where: :name }, class_name: "Bulb"
  has_many :funky_bulbs, class_name: 'FunkyBulb', dependent: :destroy
  has_many :failed_bulbs, class_name: 'FailedBulb', dependent: :destroy
  has_many :foo_bulbs, -> { where(:name => 'foo') }, :class_name => "Bulb"

  has_one :bulb

  has_many :tyres
  has_many :engines, :dependent => :destroy
  has_many :wheels, :as => :wheelable, :dependent => :destroy

  scope :incl_tyres, -> { includes(:tyres) }
  scope :incl_engines, -> { includes(:engines) }

  scope :order_using_new_style,  -> { order('name asc') }

end

class CoolCar < Car
  default_scope { order('name desc') }
end

class FastCar < Car
  default_scope { order('name desc') }
end