2013-09-14 2 views
0

Когда я пытаюсь использовать следующий код, чтобы получить 4 товаров на складе из определенной категорииФатальная ошибка abstract.phtml, пытаясь получить коллекцию продукции продукции на складе только

$_helper = $this->helper('catalog/output'); 
$_category = Mage::getModel('catalog/category')->load($this->getCategoryId()); 
$_productCollection = Mage::getResourceModel('reports/product_collection') 
         ->addAttributeToSelect('*') 
->addAttributeToFilter('is_in_stock', 1) 
->addAttributeToFilter('qty', ">1") 
         ->addCategoryFilter($_category) 
         ->setVisibility(array(2,3,4)); 
$_productCollection->getSelect()->order(new Zend_Db_Expr('RAND()'));     
$_productCollection->setPage(1, 4); 

я получил следующее исключение

Fatal error: Call to a member function getBackend() on a non-object in /home/xxx/public_html/app/code/core/Mage/Eav/Model/Entity/Abstract.php on line 816 

ответ

1

Пытаться получить сбор продукта, как это:

$_productCollection = Mage::getResourceModel('reports/product_collection') 
         ->addAttributeToSelect('*') 
         ->addCategoryFilter($_category) 
         ->setVisibility(array(2,3,4)); 
Mage::getSingleton('cataloginventory/stock')->addInStockFilterToCollection($_productCollection); //this should filter in stock products only 
$_productCollection->getSelect()->order(new Zend_Db_Expr('RAND()'));     
$_productCollection->setPage(1, 4); 
0

Эта ошибка обычно возникает из-за вызов неправильной модели, или применения фильтра к атрибуту, который не существует в этой коллекции перепроверить, что атрибут ID продукта существует на текущий Magento перейти к администрированию проверьте свои атрибуты и сопоставьте ключи с помощью

->addAttributeToFilter('is_in_stock', 1) 
->addAttributeToFilter('qty', ">1") 

Убедитесь, что вы имеете в наличии атрибута с этим is_in_stock идентификатором ансом же для Кола

Примечания Пожалуйста, помечать свой вопрос с версией вы используете в вашем случая 1,4 или 1,7? Также Magento официально поддерживает среды Linux

+0

когда я проверяю админ, ни один из этих атрибутов не существует, я думаю, они по умолчанию атрибутов, потому что я могу редактировать их продукт по продукту. –

+0

его версия 1.6 !!!! –

Смежные вопросы