include_join_fields er for mange til mange relationer, hvor du har en countries_users pivottabel, og brugere kan tilhøre mange lande.
For eksempel kan du tage én user , og countries , hvor han hører til. Men du gemmer også, hvordan er en user relateret til det country . Du skal gemme dette ekstra felt i din pivottabel:countries_users .
Så din pivottabel, countries_users vil se sådan ud med et eksempel på et ekstra felt is_he_working_there :
id
country_id
user_id
is_he_working_there
Når du laver en forespørgsel til brugerens lande, tilføjer Datamapper ikke dette felt som standard. Og her kommer include_join_field() , så hvis du kalder det, tilføjer Datamapper dette felt til slutresultatet.
Men med hasone , det vil ikke have nogen effekt, fordi du får brugeren, og de andre tabelfelter også. Ingen pivottabel her, så behøver ikke include_join_fields()