我可以成功地执行getModel(模块/许可证),但是当我加载($id)时,事情就崩溃了。
我的数据库表是setup fine,叫做licenses。
我的配置文件包含在全局->模块标记中
<modulename>
<class>NameSpace_Module_Model></class>
<resourceModel>module_mysql4</resourceModel>
</modulename>
<modulename_mysql4>
<class>NameSpace_Module_Model_Mysql4</class>
<entities>
<licenses>
<table>licenses</table>
</licenses>
</entities>
</modulename_mysql4>然后,我在Model/Licenses.php的模块中有一个文件,它有一个类NameSpace_Module_Model_Licenses extends Mage_Core_Model_Abstract,并包含一个执行$this->_init('module/licenses')的构造函数
我还在我的模块中的Model/Mysql4/Licenses.php中有一个文件,其中的类NameSpace_Module_Model_Mysql4_Model_Licenses extends Mage_Core_Model_Mysql4_Abstract带有一个构造函数,它执行$this->_init('module/licenses', 'primary key here')操作。这个类似乎从未被实例化过,因为我添加了一个永远不会运行的var_dump出口。
因此,我可以获取我的模型并将其转储到屏幕上,但是如果我加载($id),那么在任何日志文件中都不会出现任何警告。如果我在一次try catch中运行它,我仍然什么也得不到。如果我在尝试捕获并转储异常时运行->getResource(),它会给出一条消息,说明Mage注册表项"_resource_singleton/module/licenses“已经存在。
那么,如何正确地为表设置模型呢?
发布于 2011-10-03 22:04:22
是,
资源Mage注册表项“_
_singleton/模块/许可证”已存在
总是表明您欺骗了resourceModel配置节点。
https://stackoverflow.com/questions/7622484
复制相似问题