У меня есть модель, подобная этой
class PhoneNumber < ActiveRecord::Base
# id :integer not null, primary key
# value :string
# owner_type :string
# owner_id :integer
# status :integer
# device :string
# primary :boolean default(FALSE)
belongs_to :owner, polymorphic: true
scope :primary, -> { where(primary: true) }
end
и
class Worker < ActiveRecord::Base
has_many :phone_numbers, as: :owner
has_one :phone, -> { where(primary: true) }, class_name: 'PhoneNumber', foreign_key: :owner_id
validates_presence_of: phone, message: 'One primary phone is required.'
end
Здесь я пытаюсь проверить наличие только одного основного номера телефона ,Я пробовал разные подходы, найденные в интернете, но не смог найти какое-либо работоспособное решение.Спасибо