Jeśli Parent has_many :children
, musiChild :belongs_to :parent
?Czy has_many wymaga belongs_to po drugiej stronie?
Odpowiedz
Nie, należy_to nie jest konieczne. Będzie to oznaczać, że nie będziesz mógł przesyłać zapytania o powiązanie z obu kierunków, ale jeśli nie jest to wymagane dla Twojej aplikacji, nie jest to konieczne.
Jak mówi Cody, nie jest to obowiązkowe - ale będzie to 90% przypadek.
Zobacz Rails API Doc for ActiveRecord Associations. Po określeniu has_many
lub belongs_to
, kilka metod (pomocniczych) zostanie dodanych do klasy Rails Model. Powyższa strona pokazuje konkretne metody, które są dodawane automatycznie w formacie tabelarycznym. Jeśli więc podasz tylko jeden koniec powiązania, np. Dziecko, będziesz mógł używać tylko tych odpowiednich metod z modelu Dziecko.
+1 Ten link był bardzo pomocny, dzięki! – DJTripleThreat
Czy wiesz, czy to jest nadal dokładne w najnowszych Railsach? Zrobiłem trochę patrzenia i myślę, że tak, ale nie jestem pewien, i byłoby wspaniale, gdyby pierwszy wynik Google był dokładny. –