Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel 如何使用软删除方法通过单个查询更改行数据?_Laravel_Eloquent_Laravel 8 - Fatal编程技术网

Laravel 如何使用软删除方法通过单个查询更改行数据?

Laravel 如何使用软删除方法通过单个查询更改行数据?,laravel,eloquent,laravel-8,Laravel,Eloquent,Laravel 8,我正在使用方法从我的表中删除数据: $q = Company::findOrFail(1); $q->delete(); 这很好,但在删除之前,我想将行-列值status=1更改为status=0,但它无法使用雄辩的delete()方法: $q = Company::findOrFail(1); $q->status = '0'; $q->delete(); 但如果我使用两个独立的查询,它工作得很好: $q = Company::findOrFail(1); $q->

我正在使用方法从我的表中删除数据:

$q = Company::findOrFail(1);
$q->delete();
这很好,但在删除之前,我想将行-列值
status=1
更改为
status=0
,但它无法使用雄辩的
delete()
方法:

$q = Company::findOrFail(1);
$q->status = '0';
$q->delete();
但如果我使用两个独立的查询,它工作得很好:

$q = Company::findOrFail(1);
$q->status = '0';
$q->save();

$q = Company::findOrFail(1);
$q->delete();

如何通过一个有说服力的查询来实现这一点?

您必须在公司模型上保存更改,如下所示:

$q = Company::findOrFail(1);
$q->status = 0;
$q->save();
$q->delete();

您必须在公司模型上保存更改,如下所示:

$q = Company::findOrFail(1);
$q->status = 0;
$q->save();
$q->delete();
应该是:

$q=Company::findOrFail(1);
$q->status=0;
$q->save();
$q->delete();

$q=Company::findOrFail(1);
$q->更新(['status'=>0]);
$q->delete();
它应该是:

$q=Company::findOrFail(1);
$q->status=0;
$q->save();
$q->delete();

$q=Company::findOrFail(1);
$q->更新(['status'=>0]);
$q->delete();