【发布时间】:2016-08-11 08:24:15
【问题描述】:
我正在尝试为我的功能增强创建 Moodle 自定义服务
1 ) https://docs.moodle.org/dev/External_functions_API
2 ) https://docs.moodle.org/dev/Adding_a_web_service_to_a_plugin
根据这些文档更新服务模块。创建服务模块和external_lib.php 文件。 但是我在访问 Web 服务 API 时出错了
错误: {“异常”:“dml_missing_record_exception”,“错误代码”:“无效记录”,“消息” :"在数据库表external_functions中找不到数据记录。"}
启用调试模式并再次尝试。它显示外部函数注册错误。
{"exception":"dml_missing_record_exception","errorcode":"invalidrecord","mess age"
:"Can not find data record in database table external_functions.","debuginfo":"SELECT * FROM {external_functions
} WHERE name = ?\n[array (\n 0 => 'local_enroll_course',\n)]"}
如何在 Moodle 中注册新创建的服务?请帮忙
【问题讨论】:
-
你在 db/services.php 中添加了函数的描述吗? (我已经这样做了,但我收到了相同的错误消息。)你解决了这个问题吗?如果你这样做了,如果你在这里发布答案会非常有帮助。
-
Hi Yvonne,如果我们在服务模块内部进行了任何更改,需要更新数据库,所以在编辑服务模块后保存文件并再次登录moodle。所以我们得到了更新数据库的选项。这需要几分钟,更新后我们可以使用的所有功能。你可以试试这个
标签: moodle moodle-api moodle-mobile