X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/bed9cd00ed166ce346da4b8a9b654ddf86e64e70..24c96961d842f9880cf40bd3b9174a59c451b33a:/app/models/changeset_tag.rb

diff --git a/app/models/changeset_tag.rb b/app/models/changeset_tag.rb
index 6a414a0fc..600ace4a6 100644
--- a/app/models/changeset_tag.rb
+++ b/app/models/changeset_tag.rb
@@ -1,8 +1,26 @@
-class ChangesetTag < ActiveRecord::Base
-  belongs_to :changeset, :foreign_key => 'id'
+# == Schema Information
+#
+# Table name: changeset_tags
+#
+#  changeset_id :bigint(8)        not null, primary key
+#  k            :string           default(""), not null, primary key
+#  v            :string           default(""), not null
+#
+# Indexes
+#
+#  changeset_tags_id_idx  (changeset_id)
+#
+# Foreign Keys
+#
+#  changeset_tags_id_fkey  (changeset_id => changesets.id)
+#
 
-  validates_presence_of :id
-  validates_length_of :k, :v, :maximum => 255, :allow_blank => true
-  validates_uniqueness_of :id, :scope => :k
-  validates_numericality_of :id, :only_integer => true
+class ChangesetTag < ApplicationRecord
+  self.primary_keys = "changeset_id", "k"
+
+  belongs_to :changeset
+
+  validates :changeset, :presence => true, :associated => true
+  validates :k, :v, :allow_blank => true, :length => { :maximum => 255 }, :characters => true
+  validates :k, :uniqueness => { :scope => :changeset_id }
 end