2014-08-27 13 views
5

Tôi đang làm việc với Magento 1.8. 0.0, tôi có một phiên bản thử nghiệm được cài đặt trên một máy chủ WAMP qua localhost và khi tôi muốn thêm loại của tôi nhận được lỗi sau:Lỗi nghiêm trọng: Gọi hàm thành viên getId() trên một đối tượng không trong C: wamp www magentno lib Varien Data Tree Dbp.php trên dòng 332

Fatal error: Call to a member function getId() on a non-object in C:\wamp\www\magentno\lib\Varien\Data\Tree\Dbp.php on line 332

tôi đã không được thực hiện một cửa hàng nhưng vì tôi cần phải loại cho rằng .

Tôi đã thêm mã try và catch vào dòng cung cấp lỗi.

này là mã mà cung cấp cho các lỗi:

public function loadEnsuredNodes($category, $rootNode) 
{ 
    $pathIds = $category->getPathIds(); 
    $rootNodeId = $rootNode->getId(); 
    $rootNodePath = $rootNode->getData($this->_pathField); 

    $select = clone $this->_select; 
    $select->order($this->_table.'.'.$this->_orderField . ' ASC'); 

    if ($pathIds) { 
     $condition = $this->_conn->quoteInto("$this->_table.$this->_idField in (?)", $pathIds); 
     $select->where($condition); 
    } 

    $arrNodes = $this->_conn->fetchAll($select); 

    if ($arrNodes) { 
     $childrenItems = array(); 
     foreach ($arrNodes as $nodeInfo) { 
      $nodeId = $nodeInfo[$this->_idField]; 
      if ($nodeId<=$rootNodeId) { 
       continue; 
      } 

      $pathToParent = explode('/', $nodeInfo[$this->_pathField]); 
      array_pop($pathToParent); 
      $pathToParent = implode('/', $pathToParent); 
      $childrenItems[$pathToParent][] = $nodeInfo; 
     } 

     $this->_addChildNodes($childrenItems, $rootNodePath, $rootNode, true); 
    } 
} 

dòng này là kẻ giết người:

$rootNodeId = $rootNode->getId(); 

i hope this image clears some stuff up

+0

loại của bạn là 'NULL' nên sử dụng '->' trên phi vật thể (NULL) ném một lỗi nghiêm trọng. Bạn nên thêm mã nếu bạn muốn chúng tôi giúp bạn gỡ lỗi. – Debflav

+0

tôi sẽ thêm mã ngay bây giờ – Djeroen

+0

'$ root Node' là gì? '$ root Node' là NULL. – Debflav

Trả lời

1

Vấn đề này xảy ra do reindexing vấn đề. Bạn có thể chạy truy vấn này để giải quyết vấn đề này

INSERT INTO catalog_category_entity(entity_id,entity_type_id,attribute_set_id,parent_id,created_at,updated_at,path,POSITION,level,children_count) VALUES (1,3,0,0,'0000-00-00 00:00:00','2009-02-20 00:25:34','1',1,0,1),(2,3,3,0,'2009-02-20 00:25:34','2009-02-20 00:25:34','1/2',1,1,0); INSERT INTO catalog_category_entity_int(value_id,entity_type_id,attribute_id,store_id,entity_id,value) VALUES (1,3,32,0,2,1),(2,3,32,1,2,1); INSERT INTO catalog_category_entity_varchar(value_id,entity_type_id,attribute_id,store_id,entity_id,value) VALUES (1,3,31,0,1,'Root Catalog'),(2,3,33,0,1,'root-catalog'),(3,3,31,0,2,'Default Category'),(4,3,39,0,2,'PRODUCTS'),(5,3,33,0,2,'default-category');

Lưu ý: - Câu trả lời lấy từ This Link

Các vấn đề liên quan