aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/models/vertex.rb
blob: 48bb851e62c0c6e75b5377bdcf1418f259ca3a27 (plain) (blame)
1
2
3
4
5
6
7
8
9
# This class models a vertex in a directed graph.
class Vertex < ActiveRecord::Base
  has_many :sink_edges, :class_name => 'Edge', :foreign_key => 'source_id'
  has_many :sinks, :through => :sink_edges

  has_and_belongs_to_many :sources,
    :class_name => 'Vertex', :join_table => 'edges',
    :foreign_key => 'sink_id', :association_foreign_key => 'source_id'
end