将新表添加到moodle数据库

时间:2012-08-12 05:55:55

标签: mysql moodle

我只是想知道将新表添加到moodle数据库是否可以,或者我应该为此创建一个新数据库?我需要一个表来保存一个表中的唯一ID和令牌以及客户端的IP地址,客户端的MAC地址和另一个表中的计算机名称。(以及哪些是存储这些的最佳数据类型?) 而我只是想知道moodle将这些东西保存在桌子里吗?那对我来说很容易。 谢谢

3 个答案:

答案 0 :(得分:2)

问题不明确,你没有提到如何填写这些额外的表..我不知道如何从HTTP请求/响应中获取MAC地址。

Moodle有一个内置的日志记录机制,可以跟踪被访问用户的IP地址。它还具有唯一的ID(主键)和用户ID。

如果要添加新表,可以通过插件(块,模块或本地插件)添加。 Moodle还有一个强大的Event API,允许您在不实际修改核心代码的情况下触发某些操作。

希望这有帮助。

答案 1 :(得分:0)

插件表的标准做法是使用基于插件路径的表名。因此,如果插件位于local / clientlogger中,则安全名称为{local_clientlogger}。表应由/db/install.xml和/db/upgrade.php

创建

答案 2 :(得分:0)

是的,你可以在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,并定义新结构。