我只想知道向moodle
数据库添加新表是否可以,或者我应该为此创建一个新数据库?我需要一个表来在一个表中保存一个唯一的 id 和一个令牌,并在另一个表中保存客户端的 IP 地址、客户端的 MAC 地址和计算机名称。(以及存储这些的最佳数据类型是什么?)我只是想知道穆勒把这些东西保存在那里的桌子上?然后对我来说很容易。谢谢你
3 回答
这个问题不清楚,你还没有提到你将如何填写这些额外的表格。我不确定如何从 HTTP 请求/响应中获取 MAC 地址。
Moodle 有一个内置的日志记录机制,可以跟踪访问用户的 IP 地址。它还有一个唯一的 id(主键)和用户 id。
如果要添加新表,可以通过插件(块、模块或本地插件)添加。Moodle 还有一个强大的事件 API 允许您触发一些操作而无需实际修改核心代码。
希望这可以帮助。
插件表的标准做法是使用基于插件路径的表名。因此,如果插件位于本地/客户端记录器中,则安全名称将是 {local_clientlogger}。表应该由 /db/install.xml 和 /db/upgrade.php 创建
是的,您可以在moodle 的数据库中添加一个表,但是我和moodle 开发人员建议您遵循一些非常严格的规则。
不要编辑现有的 moodle 代码。Moodle 是基于一个核心,不应该被编辑,因为你的代码可能与系统的新版本冲突。因此,如果您遵守规则,您的代码将适用于其他 moodle 版本。
建议在 moodle 中开发你的东西,创建一个包含你想要的额外东西的插件。我建议您在 /local/yourplugin 中创建它。
在此内部,您将需要创建文档中列出的一些文件。我会说一下文件 local/yourplugin/db/ install.xml。
关于moodle插件的更多数据 https://docs.moodle.org/dev/Blocks https://docs.moodle.org/dev/Plugin_files
在此文件中,您将定义数据库的一部分。因此,您可以说将存在一个包含字段的新表。
关于 XMLDB(moodle 定义数据库结构的方式) https://docs.moodle.org/dev/XMLDB_Documentation
准备好所有文件后,moodle 将安装您的插件并生成您的表格。
如果您不想遵守规则 B-)。您可以找到一个模块并编辑 db/upgrade.php,并定义一个新结构。