0

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

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

4

3 回答 3

3

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

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

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

希望它有所帮助。

亲切地。

于 2015-02-26T12:17:37.307 回答
1

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

强加给你的仅有的几个限制是

  • 拥有扩展 PrestaShop 模块类的模块类;
  • 注册适当的钩子及其各自的处理程序;
于 2014-05-26T19:43:50.197 回答
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

于 2014-05-27T19:27:37.130 回答