Не уверен, зачем вам нужно создавать отдельную модель, вы можете использовать для этого базовые конструкции Ruby:
Я предполагаю, что Member
имеет столбец с именем address_id
, который является членом belongs_to
и Address
. Это автоматически свяжет для вас объединения.
Так что все, что вам нужно сделать, это примерно так:
class Address < ActiveRecord::Base
end
class Member < ActiveRecord::Base
belongs_to :address
end
member = Member.create(:address => Address.find(123))
Если вы хотите получить адрес и просто поле позиции, тогда перейдите:
member = Member.find(456)
position = member.address.position
или, возможно:
Member.joins(:address).select("members.position, addresses.street")
Не уверен, что вы пытаетесь сделать, но если это что-то очень конкретное, вы также можете попробовать создать представление в вашей базе данных, а затем создать для него модель, рассматривая его как обычную таблицу.