php – Laravel – 禁用更新时更新

前端之家收集整理的这篇文章主要介绍了php – Laravel – 禁用更新时更新前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
使用laravel 5上的查询构建器更新时遇到问题.我已尝试禁用updated_at,但仍然保持失败.

这是我的代码

$query = StockLog::where('stock_id',$id)->whereBetween('created_at',$from,$to])->update(['batch_id' => $max + 1]);

我已经尝试了两种方法
第一个在我的模型我设置:

public function setUpdatedAtAttribute($value)
{
    /*do nothing*/
}

第二个:

$stocklog = new StockLog;
$stocklog->timestamps = false;

$query = $stocklog::where('stock_id',[$from,$to])->update([
        'batch_id' => $max + 1]);

他们都失败了.有没有禁用updated_at?

提前致谢

By default,Eloquent will maintain the created_at and updated_at columns on your database table automatically. Simply add these timestamp columns to your table and Eloquent will take care of the rest.

我真的不建议删除它们.但是如果要使用以下方式.

将以下内容添加到您的模型中:

public $timestamps = false;

这将禁用时间戳.

编辑:看起来你想保留created_at字段,可以覆盖模型中的getUpdatedAtColumn.

使用以下代码

public function getUpdatedAtColumn() {
    return null;
}
原文链接:https://www.f2er.com/laravel/131672.html

猜你在找的Laravel相关文章