Требует ли has_many принадлежность_ на другой стороне? - PullRequest
7 голосов
/ 28 мая 2009

Если Parent has_many :children, должен Child :belongs_to :parent?

Ответы [ 2 ]

16 голосов
/ 28 мая 2009

Нет, принадлежать_ не обязательно. Это будет означать, что вы не сможете запрашивать ассоциацию в обоих направлениях, но если это не является обязательным требованием для вашего приложения, то это не обязательно.

11 голосов
/ 28 мая 2009

Как говорит Коди, это не обязательно - но будет 90%.

См. Документацию по Rails API для ассоциаций ActiveRecord . Когда вы указываете has_many или belongs_to, куча (вспомогательных) методов добавляется в ваш класс Rails Model. На странице выше показаны конкретные методы, которые добавляются автоматически в табличном формате. Так что, если вы просто укажите один конец ассоциации, например, Дитя, вы сможете использовать только те соответствующие методы из модели Дитя.

...