gpt4 book ai didi

php - 如何在 Laravel 中更新条件多于 ID 的模型?

转载 作者:行者123 更新时间:2023-11-29 00:01:36 26 4
gpt4 key购买 nike

我是 Laravel 5.0 的新手,我试图找到一个 user 来更新他,但有一些条件,比如状态或到期日期。当我使用 find 方法时,只要给定用户 ID 就可以更新,因为我得到一个 App\User 实例,因此可以更新:$User->fill($newData)->保存();

但是当我需要设置一些条件来查询时,实例来自 Illuminate\Database\Eloquent\Builder 并且显然没有填充方法,因为它不是 App\User(不是' t 一个 Eloquent 模型):

$User = \Reverse\Interest::find($id)
->where('status', '<>', 'DELETED')
->where('expires_at', '>=', DB::raw('NOW()'))

所以,$User->fill($newData)->save() 是不可能的...

如何找到具有 ID 和更多条件的用户并获取 App\User 实例来更新而不是 Illuminate\Database\Eloquent\Builder 实例?

最佳答案

只需调用 first() 并使用 where('id', ...:

$User = \Reverse\Interest::where('id', $id)
->where('status', '<>', 'DELETED')
->where('expires_at', '>=', DB::raw('NOW()'))
->first();

if($User !== null){
$User->fill($newData)->save();
}

关于php - 如何在 Laravel 中更新条件多于 ID 的模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29547488/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com