要修改現(xiàn)有插件并添加帶有事件觸發(fā)器的日志,我在文件夾和下圖中都有該類:我添加了代碼如下:$params = array( 'context' => $this->world->get_context(), 'relateduserid' => $USER->id, );$lupevent = \block_xp\event\user_leaderboardview::create($params);$lupevent->trigger();我還在user_leaderboardview.php里面添加了一個(gè) ,classes\event文件夾。用戶排行榜視圖<?phpnamespace block_xp\event;defined('MOODLE_INTERNAL') || die();class user_leaderboardview extends \core\event\base { public function get_description() { return 'The user witih ID ' . $this->userid . ' view the leaderboard .'; } }然而,完成這些操作后,我收到錯(cuò)誤。異常 - 未找到“block_xp\event\user_leaderboardview”類我缺少哪里添加配置?為什么找不到該類?這是命名空間的問題嗎?或者服務(wù)器沒有加載頁(yè)面?請(qǐng)幫忙解決問題
2 回答

眼眸繁星
TA貢獻(xiàn)1873條經(jīng)驗(yàn) 獲得超9個(gè)贊
您是否清除了站點(diǎn)緩存或更改了插件版本號(hào)(僅限最后一位數(shù)字)?Moodle 會(huì)緩存所有自動(dòng)加載的類名,因此如果添加新類,則需要清除緩存。

繁星coding
TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超4個(gè)贊
另外,如果您遇到類似Uncaught Error: Class 'cache' not found
(或任何其他類別)的問題:
嘗試從 Moodle 根目錄通過 cli 命令清除緩存
php admin/cli/purge_caches.php
檢查 nginx/apache 配置中的 php 版本。如果配置具有舊的 php 版本(例如版本 7),但您的 Moodle 遵循較新的 8+ 版本,則會(huì)發(fā)生這種情況。
- 2 回答
- 0 關(guān)注
- 152 瀏覽
添加回答
舉報(bào)
0/150
提交
取消