我向这篇博文中的实体添加了一个自动更新时间戳,它工作得很好。
这里是代码片段:
#[Entity]
class Article
{
#[Column(type: "datetime",
columnDefinition: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP",
insertable: false,
updatable: false,
generated: "ALWAYS")]
public $created;
}
我第一次运行
php bin/console make:migration
生成了正确的迁移:
$this->addSql('ALTER TABLE article ADD created TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP');
这工作得很好,任何数据库更新现在都会更新
created
。然而,这也是问题开始的地方。每当我现在进行另一次迁移时,它都会尝试再次应用相同的更改:
$this->addSql('ALTER TABLE article CHANGE created created TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP');
这怎么可能,有人知道如何解决这个问题吗?
非常感谢您的投入,我真的很感激。