Stackoverflow に書いてありますが、Laravel の update メソッドには順序があります。
// やってしまった
DB::table('myfields')->update(['value' => $value])->where('id', $id);
update メソッドは int を返すため、「where を int に適用しようとしています」みたいなエラーが出て実行が止まってしまいます。正しくは
// こちらが正解
DB::table('myfields')->where('id', $id)->update(['value' => $value]);
と先に where メソッドを呼び出す必要があります。
小技だけど、よく忘れて失敗するので備忘録。
コメントを残す