laravel - 使用 laravel 插入新行或删除旧行(如果它已存在)

标签 laravel eloquent laravel-5 laravel-5.1

我使用复选框为员工分配多项技能。当用户选中复选框时,一条新记录将插入到数据透视表中。如果用户取消选中复选框,则记录将被删除。

现在我想知道是否有任何插入或删除功能,就像存在新插入或更新功能一样,即 updateOrCreate 来更新现有记录或创建新记录(如果不存在)。

我可以用困难的方式做到这一点。但只是想知道是否有像 updateOrCreate 这样的函数。

最佳答案

使用sync方法它将旧值替换为新值。

$employee->skill()->sync($request->checkedSkill)

关于laravel - 使用 laravel 插入新行或删除旧行(如果它已存在),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55916415/

相关文章:

php - Laravel 队列主管不会重新读取更新

javascript - 从数据库中删除文件夹时如何删除文件夹中的多张照片?

php - Eloquent 查询获取分组相关模型的计数

Laravel Spatie - 通过模式审核日志时的自定义属性值

php - 无法访问我在 Laravel Blade 中的外键

php - 在laravel 5中搜索belongsToMany关系

laravel - 使用表单请求特定的自定义验证属性

php - Laravel 错误 - 找不到基表或 View

laravel eloquent 列表 - 对列值列表进行排序

php - Lumen:如何使用 Eloquent 获取子表列表?