magento管理部件添加类别中出现致命错误
我在Magento管理部分遇到一个错误,当我尝试创建一个类别时,它显示以下致命错误: 致命错误:在C:\wamp\www\magento\lib\Varien\Data\Tree\Dbp.php的第331行对非对象调用成员函数getId()magento管理部件添加类别中出现致命错误,magento,Magento,我在Magento管理部分遇到一个错误,当我尝试创建一个类别时,它显示以下致命错误: 致命错误:在C:\wamp\www\magento\lib\Varien\Data\Tree\Dbp.php的第331行对非对象调用成员函数getId() 有人能帮我吗?如何解决这个问题?有人能给我建议解决办法吗?啊。核心代码调试。我必须一直这样做 在该代码上放置一个try catch,并记录错误结果。这将使您更好地了解哪条线路有问题。检查php日志以获取结果 public function loadEnsur
有人能帮我吗?如何解决这个问题?有人能给我建议解决办法吗?啊。核心代码调试。我必须一直这样做 在该代码上放置一个try catch,并记录错误结果。这将使您更好地了解哪条线路有问题。检查php日志以获取结果
public function loadEnsuredNodes($category, $rootNode)
{
try {
$pathIds = $category->getPathIds();
$rootNodeId = $rootNode->getId();
$rootNodePath = $rootNode->getData($this->_pathField);
$select = clone $this->_select;
$select->order($this->_table.'.'.$this->_orderField . ' ASC');
} catch (Exception $e) {
error_log($e);
}
如果错误仍然存在,请尝试在隔离环境中使用该代码。创建一个文件test.php并将其放入magento根目录中
<?php
umask(0);
require_once 'app/Mage.php';
Mage::app('admin');
echo "<PRE>";
$category_id = 12;
$rootNode = ??? load a root node what is this?
$category = Mage::getModel('catalog/category')->load($category_id);
var_dump($category->debug());
$pathIds = $category->getPathIds();
var_dump($pathIds);
$rootNodeId = $rootNode->getId();
var_dump($rootNodeId);
运行此SQL查询,它应该立即清理:)
插入到目录类实体(实体id
,实体类型id
,属性集id
,父id
,在
创建,在
更新,路径
,位置
,级别
,子项计数
)值(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);
将值(1,3,32,0,2,1)、(2,3,32,1,2,1)插入catalog\u category\u entity\u int
(value\u id
,entity\u id
,实体类型id
,代码>实体类型id
,代码>实体类型id
,属性id
,存储id
);
将值(1,3,31,0,1,'Root-catalog'),(2,3,33,0,1,'Root-catalog'),(3,3,31,0,1,'Root-catalog'),(3,3,0,2,'Default catalog'),(4,3,3,3,0,3,'0,3,3,'0,3,'0,3,'0,1,'Root-catalog'),(3,3,2,'Default catalog'),(4,3,3,3,3,3,3,3,3,3,3,0,3,'0,3,'这个答案
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');
thanx帮了我大忙!但我的数据库中有一个表前缀,所以
以防它对任何人都不起作用
更改…所有我相信的3“插入目录\类别\实体”
使用“插入到\u在此处添加\u数据库前缀\u目录\u类别\u实体
而且它应该会起作用……不管有多大的帮助!谢谢,你救了我:D
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');