aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/models/comment.rb
blob: 3bd7db7834f3d6f8b0edcb509f02704b60283afe (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
class Comment < ActiveRecord::Base
  def self.limit_by(l)
    limit(l)
  end

  scope :containing_the_letter_e, :conditions => "comments.body LIKE '%e%'"
  scope :not_again, where("comments.body NOT LIKE '%again%'")
  scope :for_first_post, :conditions => { :post_id => 1 }
  scope :for_first_author,
              :joins => :post,
              :conditions => { "posts.author_id" => 1 }

  belongs_to :post, :counter_cache => true
  has_many :ratings

  def self.what_are_you
    'a comment...'
  end

  def self.search_by_type(q)
    self.find(:all, :conditions => ["#{QUOTED_TYPE} = ?", q])
  end

  def self.all_as_method
    all
  end
  scope :all_as_scope, {}
end

class SpecialComment < Comment
  def self.what_are_you
    'a special comment...'
  end
end

class SubSpecialComment < SpecialComment
end

class VerySpecialComment < Comment
  def self.what_are_you
    'a very special comment...'
  end
end