Это должно быть распространенной проблемой, поэтому я удивлен тем, что Google не получил больше ответов. Я работаю над приложением rails, которое имеет несколько разных типов сущностей, эти объекты нуждаются в отношении к другому объекту. Например:Rails Вложенные атрибуты, отношения для общего или общего объекта
Address
: модель, которая хранит деталь адреса улицы (это мое общего объектную)PersonContact
: модель, которая включает в себя такие вещи, как домашний телефон, мобильный телефон и адрес электронной почты. Эта модель должна иметь связанный с ней адрес.DogContact
: Очевидно, что если вы хотите связаться с собакой, вам нужно идти туда, где она живет.
Так, PersonContact
и DogContact
должны иметь внешние ключи Address
. Даже, хотя они действительно «владеющий» объект Address
. Это было бы хорошо, за исключением того, что accepts_nested_attributes_for
рассчитывает, что внешний ключ находится в Address
, чтобы работать правильно.
Какова правильная стратегия сохранения внешнего ключа в Address
, но есть PersonContact
и DogContact
быть собственными объектами?