我创建了一个模块。它工作正常但是当我们在Observer.php文件中获得产品集合时,这不会返回任何对象和集合。它是空的,也不会创建任何期望或日志文件。请帮我。
我在observer.php文件中有这段代码
class GWB_ClearOrphan_Model_Observer
{
public function disableProducts(Varien_Event_Observer $observer)
{
try{
$collection = Mage::getModel('catalog/product')->getCollection();
}
catch(Exception $e) {
Mage::log($e->getMessage(), null, 'collection.log');
}
}
}
我也在尝试两种产品收集模型方法,但未找到收集。
$collection = Mage::getResourceModel('catalog/product_collection');
$collection = Mage::getModel('catalog/product')->getCollection()->load();
答案 0 :(得分:0)
使用
$collection = Mage::getModel('catalog/product')->getCollection();
不会加载任何内容。您必须调用load()
方法,如下所示:
$collection = Mage::getModel('catalog/product')->getCollection()->load();
最好知道你想要实现什么,你观察哪个事件以及为什么要在观察者中加载所有产品?您不会在集合中使用任何过滤器,因此实际上上述语句将加载所有产品,这可能会导致您的请求失效。