]> git.openstreetmap.org Git - rails.git/blobdiff - app/models/relation_member.rb
Merge branch 'master' into convert_roundabout_exits
[rails.git] / app / models / relation_member.rb
index 389e2ce5234cded24bba7548a567e6b7b9dee124..3e5cdfca27e1513856f12c4adf04fc89e95c5bd6 100644 (file)
@@ -1,26 +1,26 @@
+# == Schema Information
+#
+# Table name: current_relation_members
+#
+#  relation_id :integer          not null, primary key
+#  member_type :enum             not null
+#  member_id   :integer          not null
+#  member_role :string           not null
+#  sequence_id :integer          default(0), not null, primary key
+#
+# Indexes
+#
+#  current_relation_members_member_idx  (member_type,member_id)
+#
+# Foreign Keys
+#
+#  current_relation_members_id_fkey  (relation_id => current_relations.id)
+#
+
 class RelationMember < ActiveRecord::Base
-  set_table_name 'current_relation_members'  
-  set_primary_keys :relation_id, :sequence_id
+  self.table_name = "current_relation_members"
+  self.primary_keys = "relation_id", "sequence_id"
 
-  belongs_to :relation
+  belongs_to :relation, :foreign_key => :relation_id
   belongs_to :member, :polymorphic => true
-
-  after_find :set_class_from_type
-  after_initialize :set_class_from_type
-  before_save :set_type_from_class
-
-  def member_type=(type)
-    self[:member_type] = type
-    self[:member_class] = type.capitalize
-  end
-
-private
-
-  def set_class_from_type
-    self[:member_class] = self.member_type.classify unless self.member_type.nil?
-  end
-
-  def set_type_from_class
-    self.member_type = self[:member_class].classify
-  end
 end