2016-07-27 16 views
0

現在、私はmoodle-3プラグインの開発に取り組んでいます。私は、コース作成者であり、そのユーザが作成したすべてのコース私はこのデータをフェッチすることができるテーブルの名前で私を助けることができるかどうか、私は使用することができます。私はすべてのイベントを得ることができる標準的なログと呼ばれるテーブルを試したことがそれを行う唯一の方法です。moodle 3で特定のユーザが作成したコースを取得する方法

答えて

1

これが機能するかどうかはわかりませんが、coursecreatorロールが割り当てられているコースを検索してみるとよいでしょう。

SELECT r.shortname, u.username, c.fullname AS coursename 
FROM mdl_role r 
JOIN mdl_role_assignments ra ON ra.roleid = r.id 
JOIN mdl_context ctx ON ctx.id = ra.contextid AND ctx.contextlevel = 50 
JOIN mdl_course c ON c.id = ctx.instanceid 
JOIN mdl_user u ON u.id = ra.userid 
WHERE r.shortname = 'coursecreator' 
+0

私はあなたにcontextlevelが使用されている理由を教えてください。 –

+0

コンテキストは、ユーザー権限に使用されます - https://docs.moodle.org/30/en/Context - contextlevel = 50はコースレベルです –

+0

ありがとうございました –

関連する問題