sql >> Database >  >> RDS >> Mysql

Datamapper ORM- Codeigniter Advance Relationship

include_join_fields zijn voor veel tot veel relaties, waarbij je een countries_users . hebt draaitabel en gebruikers kunnen tot veel landen behoren.

U kunt bijvoorbeeld één user . nemen , en de countries , waar hij bij hoort. Maar je slaat ook op, hoe is een user gerelateerd aan dat country . U moet dit extra veld opslaan in uw draaitabel:countries_users .

Dus uw draaitabel, countries_users ziet er ongeveer zo uit, met als voorbeeld een extra veld is_he_working_there :

id
country_id
user_id
is_he_working_there

Wanneer u een query maakt voor de landen van de gebruiker, zal Datamapper dat veld niet standaard toevoegen. En hier komt de include_join_field() , dus als je dat aanroept, zal Datamapper dit veld aan het eindresultaat toevoegen.

Maar met hasone , heeft het geen effect, omdat je de gebruiker krijgt, en ook de andere tabelvelden. Geen draaitabel hier, dus hoef je include_join_fields() niet




  1. SQL-fout:ORA-00933:SQL-opdracht niet correct beëindigd

  2. TO_CHAR(getal) Functie retourneert ORA-01722:ongeldig getal

  3. Grootste N-records selecteren in X-groepen

  4. Meer dan 60 seconden of minuten in MySQL-importbestand