2017-08-17 2 views
0

Je suis nouveau dans le monde Moodle. Je veux faire une jointure interne de 2 tables ou plus avec PDO. J'ai vérifié documentation mais ne trouve rien d'utile. Peut-être qu'il me manque une partie de Moodle. Disons que je veux que tous les utilisateurs soient inscrits au cours spécifié. Est-il possible de faire quelque chose de similaire à ceci:Moodle joindre des tables sans requête SQL brute

$users = get_records(['course', 'user'], 'course.id = user.course_id'); 

Répondre

0

je me suis répondu de Moodle forum:

n °

L'API DB est là pour simplifier de nombreuses situations (par exemple, obtenir un ou plusieurs enregistrements d'une seule table), mais si vous devez collecter des données de plusieurs tables à la fois, vous devez utiliser $DB->get_records_sql() (ou similaire).

Cependant, si vous voulez une liste d'utilisateurs dans un cours particulier, puis utilisez la fonction get_enrolled_users(), plutôt que d'essayer manuellement écrire la requête SQL pour elle.