Magento 2 InstallSchema未被执行

时间:2016-06-10 09:55:05

标签: php magento magento2

我已经编写了一个基本的Magento 2自定义模块。当我运行Control.Invoke时,该模块可以向Magento 2注册。我检查了bin/magento module:enable <module name>表,模块条目就在那里,模块已启用。

我在让setup_module运行时遇到问题。不管我做什么都不重要,架构安装程序永远不会被执行。我假设这是因为当我第一次执行Setup/InstallSchema.php命令时,我有一个空白bin/magento setup:upgrade。禁用和重新启用模块不会执行任何操作。我检查了数据库,Magento似乎没有使用数据库来跟踪模块InstallSchema.php。我已经尝试找到磁盘Magento跟踪当前安装的setup_version的位置,但到目前为止,我已经绘制了空白。我知道Magento可以调用我的模块,因为它正在愉快地执行setup_version文件。

有人想知道我如何强制Magento 2执行我的Setup/InstallData.php文件吗?

1 个答案:

答案 0 :(得分:5)

执行InstallSchema命令时,你是正确的magento执行bin/magento setup:upgrade。您可以在安装后为更改创建UpgradeSchema

按照以下步骤将InstallSchema转换为UpgradeSchema。

1)制作当前InstallSchema文件的副本,并将其重命名为UpgradeSchema

2)编辑UpgradeSchema.php并找到替换: -

{ InstallSchema } => { UpgradeSchema }

 { public function install } => { public function upgrade }

3)在setup_version="1.0.0"

中将setup_version="1.0.1"更改为/app/code/vender/module/etc/module.xml

4)执行php bin/magento setup:upgrade

希望它能起作用.... :)