+# == Schema Information
+#
+# Table name: current_way_tags
+#
+# way_id :bigint(8) not null, primary key
+# k :string default(""), not null, primary key
+# v :string default(""), not null
+#
+# Foreign Keys
+#
+# current_way_tags_id_fkey (way_id => current_ways.id)
+#
+
class WayTag < ActiveRecord::Base
- set_table_name 'current_way_tags'
+ self.table_name = "current_way_tags"
+ self.primary_keys = "way_id", "k"
- # False multipart keys. The following would be a hack:
- # set_primary_keys :id, :k, :v
- # FIXME add a real multipart key to waytags so that we can do eager loadin
+ belongs_to :way
- belongs_to :way, :foreign_key => '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
+ validates :way, :presence => true, :associated => true
+ validates :k, :v, :allow_blank => true, :length => { :maximum => 255 }, :characters => true
+ validates :k, :uniqueness => { :scope => :way_id }
end