2012-08-12 108 views
5

我只想知道向moodle數據庫添加新表是否可以,或者我應該爲此創建新數據庫嗎?我需要一個表來保存一個表中的唯一ID和令牌,另一個表中保存客戶端的IP地址,客戶端的MAC地址和計算機名稱(以及存儲這些數據的最佳數據類型是什麼?) 我只想知道moodle是否將這些東西保存在表格中?那對我來說很簡單。 謝謝向moodle數據庫添加新表

回答

2

問題並不清楚,你還沒有提到你將如何填補這些額外的表..我不知道如何從HTTP請求/響應獲取MAC地址。

Moodle有一個內置的日誌記錄機制,用於跟蹤訪問用戶的IP地址。它也有一個唯一的ID(主鍵)和用戶ID。

如果您想添加新表格,您可以通過插件(塊,模塊或本地插件)添加它。 Moodle也有一個強大的Event API,可以讓你觸發一些操作,而無需修改核心代碼。

希望這會有所幫助。

+0

可以請你告訴我moodle商店的唯一ID和用戶ID在哪裏。我的意思是存儲這些數據的表格。因爲在moodle中有超過100個表格。謝謝 – Ravindu 2012-08-21 13:02:15

+0

@Ravindu:mdl_log和mdl_user。 moodle數據庫表的名稱不言自明。 – iankit 2014-01-26 16:20:11

0

插件表的標準做法是使用基於插件路徑的表名。因此,如果插件位於local/clientlogger中,則安全名稱將是{local_clientlogger}。表格應由/db/install.xml和/db/upgrade.php創建。

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,並定義一個新的結構。