我正在学习如何在 Moodle 上制作本地插件 :
我正在尝试在用户登录时执行操作
这是我的文件夹:
observer.php的内容:
defined('MOODLE_INTERNAL') || die();
class local_firsttimeconnect_on_login_observer
{
public static function local_firsttimeconnect_on_login(core\event\base $event, $user) {
var_dump($user);
die();
}
}
events.php的内容:
defined('MOODLE_INTERNAL') || die();
$observers = array(
array(
'eventname' => '\core\event\user_loggedin',
'callback' => 'local_firsttimeconnect_on_login_observer::local_firsttimeconnect_on_login',
),
);
我在登录时不断收到此错误(这意味着该事件在适当的时候触发):无法执行事件观察器'local_firsttimeconnect_on_login_observer::local_firsttimeconnect_on_login'
到目前为止,我已经看到,如果我直接在外部文件上调用函数
local_firsttimeconnect_on_login
,它会正常工作,所以我认为问题不在这里。
我已经尝试了几种方法来调用我的方法,甚至从根指定命名空间和/或路径,但我仍然无法到达它,我所能做的就是要么得到这个错误,要么到达正常的仪表板而不停止死或做任何事情
$observers = array(
array(
'eventname' => '\core\event\user_loggedin',
'callback' => 'local_firsttimeconnect_on_login_observer::local_firsttimeconnect_on_login',
'includefile' => 'local/firstimeconnect/locallib.php',
),
);