prestashop模块中的模型类

时间:2014-05-26 19:28:20

标签: php prestashop prestashop-1.6

我正在开发一个PrestaShop模块,它将拥有自己的数据库表。我们假设数据库表名是“cat'”。所以我希望有一个名为Cat的模型类来跟踪它的属性和相关操作。那应该在哪里呢?

例如,类目录中有prestashop核心模型类。为此目的,可以在我的模块目录中创建一个classes目录吗?它会起作用吗?

3 个答案:

答案 0 :(得分:3)

使用的标准是将模型类放在/module/model/YourModelClass.php中,你可以看到this module,在你的安装模块类中你应该调用它

require_once(_PS_MODULE_DIR_ . 'example/models/YourModelClass.php'); 

你的类模型没有严格的命名标准,就像控制器类和安装类一样。

希望它有所帮助。

亲切。

答案 1 :(得分:1)

PrestaShop模型结构非常流畅。您可以决定要使用的结构。

对你施加的唯一限制是

  • 拥有扩展PrestaShop模块类的模块类;
  • 注册适当的钩子及其各自的处理程序;

答案 2 :(得分:1)

我的问题是关于在prestashop中放置ObjectModel子类的位置。以上接受的答案正在回答这个问题。但这还不足以正确地运行模块。您必须在模块内部使用模型类。

例如

include_once(_PS_MODULE_DIR_.'mymodule/classes/Cat.php');

class mymoduledisplayModuleFrontController extends ModuleFrontController { 
   // Other code goes here
}

如果要覆盖现有的模型类,可以将类放在/ modules / your_module / override / classes目录中。我注意到在安装模块时,重写的类将被复制到prestashop_root / override / classes目录。

http://doc.prestashop.com/display/PS16/Overriding+default+behaviors#Overridingdefaultbehaviors-Overridingaclass