X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/5652e9f6b95c1e44db597c0136a985aef5e28ad5..03fdc6d67f1826b1a202eb50c284fa9202af24af:/app/models/old_relation.rb diff --git a/app/models/old_relation.rb b/app/models/old_relation.rb index d0a03ac25..71bd4b73d 100644 --- a/app/models/old_relation.rb +++ b/app/models/old_relation.rb @@ -32,10 +32,10 @@ class OldRelation < ApplicationRecord belongs_to :changeset belongs_to :redaction - belongs_to :current_relation, :class_name => "Relation", :foreign_key => "relation_id" + belongs_to :current_relation, :class_name => "Relation", :foreign_key => "relation_id", :inverse_of => :old_relations - has_many :old_members, -> { order(:sequence_id) }, :class_name => "OldRelationMember", :foreign_key => [:relation_id, :version] - has_many :old_tags, :class_name => "OldRelationTag", :foreign_key => [:relation_id, :version] + has_many :old_members, -> { order(:sequence_id) }, :class_name => "OldRelationMember", :foreign_key => [:relation_id, :version], :inverse_of => :old_relation + has_many :old_tags, :class_name => "OldRelationTag", :foreign_key => [:relation_id, :version], :inverse_of => :old_relation validates :changeset, :presence => true, :associated => true validates :timestamp, :presence => true @@ -82,7 +82,7 @@ class OldRelation < ApplicationRecord end def tags - @tags ||= old_tags.collect { |t| [t.k, t.v] }.to_h + @tags ||= old_tags.to_h { |t| [t.k, t.v] } end attr_writer :members, :tags