我已经意识到默认情况下,分配全局角色中的搜索字段只按名称,姓氏和邮件搜索用户。
有没有办法添加新字段进行搜索?例如:城市,自定义领域等。
我试图阅读源代码及其OO难题。
答案 0 :(得分:0)
你有哪个版本的Moodle?
以下详细信息基于moodle存储库的master分支:
有2个类用于搜索潜在用户:
在全局搜索admin/roles/assign.php?contextid=1&roleid=2
中,使用了第二个类core_role_potential_assignees_course_and_above
。
在文件/admin/roles/assign.php第94行中,函数core_role_get_potential_user_selector
用于实例化对象。
您可以修改现有类,也可以使用自己的实现创建新类。 (在我看来,第二种选择更好)。如果您创建了自己的实现,则需要替换line 94。
在班级core_role_potential_assignees_course_and_above
中有一个名为search_sql
的方法。此方法用于生成“WHERE子句”。
我希望这会有所帮助