2017-10-10 16 views
0

私は、ユーザに特定のシステムロールを割り当てるためにmoodleにブロックを作成しています。これを行う最善の方法はわかりません。moodle core api関数を使用して役割を割り当てる

サイト管理>ユーザー>権限>システムロールの割り当てでブロックを割り当てることができますが、ブロックはカスタムテーブルで他のことを行う必要があります。カスタムテーブルにレコードを作成しますが、このシステムロールは残っているアイテムです。これを行う方法がわかりません

私はこれをどのように行うことができますか(私はmoodle core api )

またはrole_assignmentsテーブルにレコードを追加することをお勧めしますか。手動でデータベースクエリを使用していますか?それはうまくいくのだろうか?

+0

こんにちは@davosmithありがとうございました。はい、それは動作します..私はこれらのタイプのコア機能を見つけることができるサイトを提案してください。ありがとう –

答えて

0
$context = context_system::instance(); 
role_assign($roleid, $userid, $context->id); 

DBテーブルを直接更新しないでください。ロール変更のイベントハンドラ(または関連するキャッシュのクリアなど)がトリガーされないためです。

関連する問題