如何在 Moodle Web 服务上获取注册用户的角色 ID

Zul*_*ara 5 moodle-api

我想使用“enrol_manual_enrol_users”功能。执行此“角色”所需的一个字段。我想从 Moodle 中提取角色列表并将其呈现给用户以选择学生应注册的角色。我看不到任何返回角色列表的函数。有内置的网络服务吗?

wp7*_*8de 3

据我所知,没有 Web 服务 API(概述)来检索 Moodle 角色,因为没有必要。您可以在 mdl_role 表中找到角色 ID。除非修改,否则它们将如下所示:

+------+--------+------------------+---------------+-------------+------------------+
| "id" | "name" |   "shortname"    | "description" | "sortorder" |   "archetype"    |
+------+--------+------------------+---------------+-------------+------------------+
| "1"  | ""     | "manager"        | ""            | "1"         | "manager"        |
| "2"  | ""     | "coursecreator"  | ""            | "2"         | "coursecreator"  |
| "3"  | ""     | "editingteacher" | ""            | "3"         | "editingteacher" |
| "4"  | ""     | "teacher"        | ""            | "4"         | "teacher"        |
| "5"  | ""     | "student"        | ""            | "5"         | "student"        |
| "6"  | ""     | "guest"          | ""            | "6"         | "guest"          |
| "7"  | ""     | "user"           | ""            | "7"         | "user"           |
| "8"  | ""     | "frontpage"      | ""            | "8"         | "frontpage"      |
+------+--------+------------------+---------------+-------------+------------------+
Run Code Online (Sandbox Code Playgroud)

最有可能的是,您只需要学生和教师角色。

由于您使用 Moodle Core API,我建议在设置中激活内置 API 文档管理块 > 插件 > Web 服务 > API 文档)。
官方网络服务论坛也值得了解。