X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/5f8ab9e9244550b20b8d3bd97b3567df7020d06d..270b0d575e63b1beabb89fb33c58db57f9f69089:/app/models/relation_member.rb diff --git a/app/models/relation_member.rb b/app/models/relation_member.rb index 9ff4f46f3..dd47bdcf6 100644 --- a/app/models/relation_member.rb +++ b/app/models/relation_member.rb @@ -1,23 +1,28 @@ -class RelationMember < ActiveRecord::Base - set_table_name 'current_relation_members' - - belongs_to :member, :polymorphic => true, :foreign_type => :member_class - belongs_to :relation, :foreign_key => :id +# == Schema Information +# +# Table name: current_relation_members +# +# relation_id :bigint(8) not null, primary key +# member_type :enum not null +# member_id :bigint(8) 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) +# - def after_find - self[:member_class] = self.member_type.capitalize - end +class RelationMember < ApplicationRecord + self.table_name = "current_relation_members" + self.primary_keys = "relation_id", "sequence_id" - def after_initialize - self[:member_class] = self.member_type.capitalize - end + belongs_to :relation + belongs_to :member, :polymorphic => true - def before_save - self.member_type = self[:member_class].downcase - end - - def member_type=(type) - self[:member_type] = type - self[:member_class] = type.capitalize - end + validates :member_role, :allow_blank => true, :length => { :maximum => 255 }, :characters => true end