背景
我一直在开发一些自定义模块(在社区文件夹中),并取得了很好的进展。我的设置脚本创建了许多新的Magento实体(以及它们的数据库表)和一些自定义属性。
我正在进行前端产品视图定制(从我的自定义实体数据库表中提取一些信息),需要创建一些新产品进行测试。当我要创建(具体来说是保存)一个新产品时,我只得到了一个空白的白色页面。
所以,我查看了System.log:
User Error: Some transactions have not been committed or rolled back
没有任何异常,所以我启用了MySql日志记录,并得到了类似以下的内容:
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'XXXXXX.catalog_category_flat_store_1
迄今为止的努力
由于我的模块创建了一些数据库表(并向其中添加了一些索引),我想我一定做错了什么,从而破坏了Magento的索引。因此,我安装了一个全新的Magento实例 ==>没有问题;我可以很好地创建/编辑产品。
接下来,我安装了我的模块但注释掉了所有的install-0.0.1.php(即:没有数据库操作),只保留了startSetup()
和endSetup()
-- 我的计划是逐个检查表格,看什么时候会出现错误Some transactions have not been committed or rolled back
。
令我非常惊讶的是,即使我的模块的setup.php没有接触到数据库,产品创建/编辑问题也立即重新出现了。
因此,唯一发生工作和不工作之间的更改是我的模块的安装,但是我的模块没有接触到Magento的数据库。
问题
- 我的模块可能会对Magento的索引造成什么影响?
- 可能还有其他问题吗?
非常感谢任何帮助或想法!