我创建了一个自定义模块。失败的呼叫是:
$collection = Mage::getModel('[modulename]/[model]')->getCollection();
$collection->addFieldToFilter('is_public', 1)->getSelect();
$collection = Mage::getModel('[modulename]/[model]')->getCollection()->getFirstItem();//
显然,我在模特中搞砸了一些东西。他们在这里:
型号/ [模型] .PHP
class [namespace]_[modulename]_Model_[model] extends Mage_Core_Model_Abstract {
public function _construct() {
parent::_construct();
$this->_init('[modulename]/[model]');
}
}
型号/ Mysql4 / [模型] .PHP
class [namespace]_[modulename]_Model_Mysql4_[model] extends Mage_Core_Model_Mysql4_Abstract {
public function _construct() {
$this->_init('[modulename]/[model]', 'id');
}
}
型号/ Mysql4 / [模型] /Collection.php
class [namespace]_[modulename]_Mysql4_[model]_Collection extends
Mage_Core_Model_Mysql4_Collection_Abstract {
protected function _construct() {
//parent::_construct();
$this->_init('[modulename]/[model]');
}
}
收藏品有效。
$collection = Mage::getModel('[modulename]/[model]')->getCollection()->getData();
上面的代码返回表中的所有行。一旦我尝试将另一个函数应用于它,它就会失败。从我读过的内容来看,addFieldToFilter应该适用于正确设置的集合。
这是magento。谢谢你的帮助!
答案 0 :(得分:0)
检查以下内容:
注意: 抽象类Mage_Core_Model_Resource_Db_Collection_Abstract extends Varien_Data_Collection_Db没有getFirstItem()
类Varien_Data_Collection实现IteratorAggregate,Countable
有这个功能。
请按照上面的说明检查您所讨论的Object类的类。
将特定代码行粘贴到此错误的位置。