如何使用OpenCart模块从控制器中的模型调用函数?

时间:2012-05-26 04:35:25

标签: php mysql opencart

我希望这不是模糊的,我仍然是MVC-L框架的初学者。我正在创建一个Open-cart 1.5.1.3模块,从我可以收集的内容中,OC 1.5+将在您第一次安装模块时自动从您的控制器中调用install()函数(如果您提供安装) ()函数是)。我遇到麻烦的地方是实际调用一个函数(创建一个新的数据库表),该函数位于模型中,来自我的控制器函数install()。

这是我已经拥有的代码:

控制器:TrademeXml

 public function install() {
    $this->load->model('model/TrademeXml');
// Create table to store TradeMe ID
$this->model_model_TradmeXml->createModuleTables();
}

型号:TradmeXml

 public function createModuleTables() {
    $query = $this->db->query("CREATE TABLE IF NOT EXISTS " . DB_PREFIX . "trademeID (tid INT(30), PRIMARY KEY(tid)");
}

在安装模块期间调用install函数,但是出现以下错误:

致命错误:在D:\ xampp \ htdocs \ store \ admin \ controller \ module \ TrademeXml.php

中的非对象上调用成员函数createModuleTables()

2 个答案:

答案 0 :(得分:4)

$this->load->model('module/tradexml');
$this->model_module_tradexml->createModuleTables();

答案 1 :(得分:0)

我错过了这个......

public function index() {
        $this->install();