这是代码:
$row = UserFields::where(['user_id' => $user['user_id'], 'field_id' => 'myfield'])->first();
if($row)
{
$row->field_value = "new value";
$row->save();
}
突然field_value
,该表中的所有行都更改为新值,并且仅适用于该用户!
这真是令人困惑,我不知道这是否是Eloquent中的错误。
对于任何有相同问题的人,我都设法通过使用基本的lumen db查询方法解决了这个问题:
app('db')->update("UPDATE `xf_user_field_value` SET `field_value` = ? WHERE (user_id = ? AND field_id = ?);", [ $newValue, $user_id, $column ]);
我已经完全禁用了Eloquent,因为它对我来说太过强大了,不足以满足我的需求。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句