Sha256: 0d6a0942abe405ab477f85d07616604d3ea7a0f90f337ee493f2250f8573156c

Contents?: true

Size: 602 Bytes

Versions: 1

Compression:

Stored size: 602 Bytes

Contents

class Comment < ::ActiveRecord::Base
  belongs_to :parent, :class_name => 'Comment', :foreign_key => :parent_id
  has_many :children, :class_name => 'Comment', :foreign_key => :parent_id
  has_many :self_siblings, :class_name => 'Comment',
     :foreign_key => :parent_id, :primary_key => :parent_id

  includes_many :self_or_children, :class_name => 'Comment',
     :foreign_key => proc { parent_id && :parent_id or :id }, :primary_key => :id

  includes_many :self_siblings_and_children, :class_name => 'Comment',
     :foreign_key => :parent_id, :primary_key => proc { |c| [c.parent_id, c.id] }
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
includes_many-0.1.0 spec/internal/app/models/comment.rb