0

我在 laravel 中设置了多对多关系,我想在其中保存用户设置。可以从多个用户设置一个设置,并且一个用户可以有多个设置。

我在数据透视表中有一个名为“值”的附加字段,我想在其中保存用户设置的值。

好吧,我想要的是在特定用户和设置没有价值时创建一个新条目。但是如果已经有一个值,它应该被更新。

这是我尝试过的:

$setting = Setting::find(1);
Auth::user()->settings()->save($setting,array('value' => 15));

一旦我将值更改为其他值,它就会自动创建一个新条目。但我希望它得到更新。我怎样才能做到这一点?

4

1 回答 1

1

使用 UpdateOrCreate 方法。

$setting = Setting::find(1);
Auth::user()->settings()->updateOrCreate($setting,array('value' => 15));

方法文档

于 2015-04-26T02:20:41.583 回答