在 Magento 2 的 InstallSchema 中创建自动更新时间属性
本主题的目的是帮助您使用 MYSQL在 Magento 2 的 InstallSchema 中创建自动更新时间属性。
如何在 Magento 2 的 InstallSchema 中创建自动更新时间属性
MYSQL 将直接使用 TIMESTAMP 和 DATETIME,允许自动初始化、更新和显示网站上的当前日期和时间,而不必手动将正确的日期和时间值插入到 PHP 代码中,具体如下:
- 自动初始化时间属性意味着自动加载当前时间戳和日期时间。
- 自动更新时间属性意味着自动更新到当前时间戳和日期时间。
为了在Magento 2商店中完美构建自动更新时间属性,您可以参考以下脚本代码。需要将代码添加到 InstallSchema 文件中。
app/code/Example/HelloWorld/Setup/InstallSchema.php
这里有两列created_at
并update_at
包含在您的表格中。当您向数据表中设置新行时,created_at 列将进行自动初始化,如果您继续更新数据表中的一行,updated_at 将发生更改。
...
->addColumn(
'created_at',
\Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
null,
['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT],
'Created At'
)->addColumn(
'updated_at',
\Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
null,
['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT_UPDATE],
'Updated At'
)
->addColumn(
'created_at',
\Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
null,
['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT],
'Created At'
)->addColumn(
'updated_at',
\Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
null,
['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT_UPDATE],
'Updated At'
)
...
最后,您需要php bin/magento setup:upgrade
在控制台中运行该命令,之后,created_at
和updated_at
字段将在 MYSQL 中建立。
版权声明:本站内容源自互联网,如有内容侵犯了你的权益,请联系删除相关内容。