getModel 返回对象,但在布尔值上调用"load()"?



这是我的第一个Magento模型,我遇到了麻烦。我已经浏览了一些Magento核心模块,以尝试找到我正在做的事情中的错误,据我所知,除了名称和表格之外,一切都完全相同。

我正在使用Magento 1.9。

以下代码...

$test = Mage::getModel('employee/user');
var_dump($test);
$test->load($params['id']);

收益 率。。。

object(Dot_Employee_Model_User)#139 (15) { ["_eventPrefix":protected]=> string(13) "core_abstract" ["_eventObject":protected]=> string(6) "object" ["_resourceName":protected]=> string(13) "employee/user" ["_resource":protected]=> NULL ["_resourceCollectionName":protected]=> string(24) "employee/user_collection" ["_cacheTag":protected]=> bool(false) ["_dataSaveAllowed":protected]=> bool(true) ["_isObjectNew":protected]=> NULL ["_data":protected]=> array(0) { } ["_hasDataChanges":protected]=> bool(false) ["_origData":protected]=> NULL ["_idFieldName":protected]=> NULL ["_isDeleted":protected]=> bool(false) ["_oldFieldsMap":protected]=> array(0) { } ["_syncFieldsMap":protected]=> array(0) { } } 
Fatal error: Call to a member function load() on boolean in www.example.com/somePath/app/code/core/Mage/Core/Model/Abstract.php on line 225

我有以下配置.xml...

<models>
<employee>
<class>Dot_Employee_Model</class>
<resourceModel>employee_resource></resourceModel>
</employee>
<employee_resource>
<class>Dot_Employee_Model_Resource</class>
<entities>
<ipwhitelist>
<table>dot_employee_ipwhitelist</table>
</ipwhitelist>
<user>
<table>dot_employee_user</table>
</user>
</entities>
</employee_resource>
</models>

这是来自我的一个模型的示例文件集...

型号/白名单.php

class Dot_Employee_Model_Ipwhitelist extends Mage_Core_Model_Abstract
{
protected function _construct()
{
parent::_construct();
$this->_init('employee/ipwhitelist');
}
}

模型/资源/白名单.php

class Dot_Employee_Model_Resource_Ipwhitetable extends Mage_Core_Model_Resource_Db_Abstract
{
protected function _construct()
{
$this->_init('employee/ipwhitetable', 'ip_id');
}
}

模型/资源/白名单/集合.php

class Dot_Employee_Model_Mysql4_Ipwhitelist_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract
{
public function _construct()
{
$this->_init('employee/ipwhitelist');
}
}

更改以下文件模型/资源/白名单.php

class Dot_Employee_Model_Resource_Ipwhitelist extends Mage_Core_Model_Resource_Db_Abstract
{
protected function _construct()
{
$this->_init('employee/ipwhitetable', 'ip_id');
}
}

您错误地将类名输入为 Ipwhitetable 而不是 Ipwhitelist。 并且需要验证表名声明是否正确。

我希望它能帮助你。

最新更新