Это довольно простой вопрос на самом деле, но допустим, я создаю модель для Person. У человека, очевидно, есть имя, фамилия, возраст и т. Д. Но у человека также есть контактная информация, состоящая из таких элементов, как адресная строка 1, адресная строка 2, город, штат, почтовый индекс, страна, телефон 1, телефон 2 и т. Д.
Имеет ли смысл создавать модель для Person и затем перечислять эту контактную информацию в виде таблиц в модели или также создавать, скажем, модель ContactInfo (или Address и т. Д.), А затем связывать Person с ContactInfo через ассоциация (Лицо has_one ContactInfo / Лицо has_one Адрес / Адрес принадлежит_ Лицу и т. д.)?
Какой из них является лучшим подходом и каковы преимущества / недостатки каждого метода?
редактировать: в отношении к ..
Итак, при таком подходе мне нужно было бы создать адресуемую модель?
script/generate model Addressable
class Addressable < ActiveRecord::Base
#stuff here?
end
или это не нужно?
Кроме того, мне нужно добавить эту строку в create_users.rb:
t.references :addressable, :polymorphic => true
Я чувствую, что что-то упустил, но я не уверен, что. Я ценю помощь за тонну, кстати! Спасибо!