我正在编写一个控制台控制器命令,用于编辑一些数据库中的一些值。问题是当我试图保存模型时。
//console/controllers/ConsoleController.php
public function actionChangeCourseTitle()
{
$model = Course::find->where([ 'id' => $id])->all();
$model->title = "new title";
$model->detachBehaviors(); //for deactivate the TimestampBehavior
$model->save();
}
我想在“update_at”字段中关闭自动保存时间戳的功能,使用$model-〉detachBehaviors(),如yii 2文档中所述(https://www.yiiframework.com/doc/guide/2.0/en/concept-behaviors#detaching-behaviors),但是不起作用。
你知道为什么不工作吗?我定义错误的detachBehaviors()?
顺祝商祺!
保禄
更新:在表的SQL定义中编辑。
创建表格course
(...updated_at
日期时间非空默认当前时间戳打开更新当前时间戳,
......)
我用ALTER COLUMN作为SQL查询来解决这个问题...
修改表course
修改列updated_at
日期时间非空默认当前时间戳;
并且我可以编辑字段而不自动更新字段“update_at”。
1条答案
按热度按时间qco9c6ql1#
更新:在表的SQL定义中编辑。
“创建表格”课程(...
更新日期时间非空默认当前时间戳打开更新当前时间戳,
......)
我用ALTER COLUMN作为SQL查询来解决这个问题...
更改表过程修改列更新的日期时间NOT NULL默认当前时间戳;
并且我可以编辑字段而不自动更新字段“update_at”。