Magento:Mage :: getModel('catalog/category') - > load($ id)无效

Bry*_*uiz 10 magento

Mage :: getModel('catalog/category') - > load($ id)不起作用(没有加载数据,getId()为空).

但如果我这样做:

     $collection = Mage::getModel('catalog/category')->getCollection();
     foreach($collection as $category) {
         if($category->getId() == $id) {
             echo "it has been founnnd!!!";

         }
     }
Run Code Online (Sandbox Code Playgroud)

有用?

我应该提到我正在使用phpunit测试通过cli运行此代码,因此它的引导.我的猜测是范围可能存在问题?

Jür*_*len 15

我认为问题必须在您的单元测试或其他地方.

Mage::getModel('catalog/category')
  ->setStoreId($store_id)
  ->load($id);
Run Code Online (Sandbox Code Playgroud)

完美的作品对我很好,不管我是否使用PHP的apache,apache2handler,cgi,cgi-fcgicliSAPI也不管里面的Magento版本(CE 1.3,1.5,1.6和1.11 EE),我试过.


Ful*_*ull 5

我注意到的(是的,3年后)是:

1)如果启用了类别平面表并且索引不是最新的,则不会加载类别

2)如果不属于"默认类别",则不会加载类别