gpt4 book ai didi

Laravel 5.1 Eloquent 地尝试插入数据库而不是更新

转载 作者:行者123 更新时间:2023-12-01 11:31:20 25 4
gpt4 key购买 nike

我找到了这样一条现有记录:

$m = new Model();
$value = 1;
$m->whereField($field)->first(); // Get the model
if ($m->exists()) { // this is true so I know it's there
$m->anotherField = $value
$m->save(); // Laravel tries to INSERT vs UPDATE. Why????
}

我知道可以找到记录,因为 exists() 为真。然而,我试图保存它,Laravel 将它视为一条全新的记录,并尝试插入而不是更新。我在这里做错了什么?

最佳答案

您需要为找到的项目设置一个变量

$m = $m->whereField($field)->first();
if ($m->exists()) {
$m->anotherField = $value;
$m->save();
}

如您现在所见,$m 仅引用 new Model(),而不是找到的项目。

关于Laravel 5.1 Eloquent 地尝试插入数据库而不是更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31766089/

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