include_join_fields jsou pro mnoho až mnoho vztahů, kde máte countries_users kontingenční tabulky a uživatelé mohou patřit do mnoha zemí.
Můžete například vzít jednoho user a countries , kam patří. Ale také ukládáte, jaký je user související s danou country . Toto dodatečné pole musíte uložit ve vaší kontingenční tabulce:countries_users .
Takže vaše kontingenční tabulka countries_users bude vypadat nějak takto, s příkladem dalšího pole is_he_working_there :
id
country_id
user_id
is_he_working_there
Když zadáte dotaz na země uživatele, Datamapper toto pole nepřidá jako výchozí. A zde přichází include_join_field() , takže pokud to zavoláte, Datamapper přidá toto pole ke konečnému výsledku.
Ale s hasone , nebude to mít žádný účinek, protože získáte uživatele a také ostatní pole tabulky. Není zde žádná kontingenční tabulka, takže není potřeba include_join_fields()