laravel - 批量更新 Laravel 中具有多关系的表

我在 Channel 和 Video 表之间有一个一对多关系。两个表都有 visibility 字段。当我更新 channel 的可见性时,我想使用该 channel 的可见性值更新属于该 channel 的所有视频的可见性。

如何在 Laravel 5.4 中实现这种批量更新功能?

最佳答案

您可以在该模型上监听“更新”事件。检查“可见性”字段是否已更改,如果已更改,则运行查询以立即更新所有相关记录。

$channel->videos()->update(['visibility' => true]);

一种可能。这不会为那些 Video 模型触发任何事件,因为它实际上并没有检索它们,它只是直接在数据库上触发更新。

https://stackoverflow.com/questions/47373543/

相关文章:

reactjs - 文件上传不适用于按钮单击 Material -UI V1 ReactJs

r - 如何从日期获取 ISO 周数

python-2.7 - 我怎么知道我使用的是哪个版本的 Tkinter?

r - 计算 R 中分类变量的出现次数

haskell - `pure x = (\_ -> x)` 是什么意思?

batch-file - 在没有出现超时消息的情况下在批处理文件中运行超时命令

msbuild - 使用 MSBuild 通过 VS2017 构建 SSDT 项目失败

listview - Xamarin.Forms:软键盘与页面底部的最后一个条目(滚动时)重叠

php - Laravel paginate 无法在 querybuilder 上选择某些列

python - 如何计算图像中的亮像素?