Laravel更新查询使用

时间:2019-04-27 18:08:41

标签: laravel

我使用此查询来更新状态列。

$val="1";
vehicles::where('id' , '=' , $veh_status)->update(['status' => $val]);

但是当我提交状态值并没有改变。

2 个答案:

答案 0 :(得分:1)

不确定您存在什么问题,因为您没有提供很多信息来解决,但是您可以查看以下建议:

  • 检查该列是否在模型类中设置为可大规模分配,即是否在fillable []数组中。
  • 确保您传递给where()函数的ID有效。
  • 尝试使用另一个功能save(),它将达到您寻求的相同结果,就像这样;

    // filter the vehicle $vehicle = vehicles::where('id', '=', $veh_id)->first(); or $vehicle = vehicles::find($veh_id); $vehicle->status = 1; $vehicle->save();

最后,我注意到您将id变量传递给了()函数,该函数称为$veh_status“大概是车辆状态”,而不是$veh_id,“大概是车辆ID”,因此请检查一下

参考:Laravel Model Update documentation

答案 1 :(得分:0)

您可以使用->toSql()方法来跟踪查询! 试试这个,看看后面发生了什么