Eloquent - 更新集合中的所有模型

2023-12-30

我想在集合的所有模型中设置某个属性。

在简单的 SQL 中:

UPDATE table SET att = 'foo' WHERE id in (1,2,3)

我的代码:

$models = MyModel::findMany([1,2,3]);
$models->update(['att'=>'foo']);

取自here https://stackoverflow.com/questions/25597266/how-to-update-a-collection-using-eloquent-laravel

但不起作用。我越来越

Call to undefined method Illuminate\Database\Eloquent\Collection::update()

我发现它的唯一方法是使用查询生成器构建查询,但我宁愿避免这种情况。


您正在返回一个集合,而不是保持查询打开以进行更新。就像你的例子正在做的那样。

$models = MyModel::whereIn('id',[1,2,3]);
$models->update(['att'=>'foo']);

whereIn将查询您案例中的列id,第二个参数是要返回的ids数组,但不会执行查询。这findMany您正在使用的是执行它,从而返回模型集合。

如果您需要将模型用于其他用途,您可以这样做$collection = $models->get();它将返回模型的集合。

如果你不只是像这样简单地写在一行上;

MyModel::whereIn('id',[1,2,3])->update(['att'=>'foo']);

我不推荐的另一个选择是使用以下内容;

$models = MyModel::findMany([1,2,3]);

$models->each(function ($item){
    $item->update(['att'=>'foo']);
});

这将循环遍历集合中的所有项目并单独更新它们。但我推荐的是whereIn method.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Eloquent - 更新集合中的所有模型 的相关文章

  • 如何改进 PHP 分页算法?

    我正在研究 PHP 中的分页算法 我可以猜测它需要改进的空间 所以我想对如何改进它有一些想法 无论是从 UI UX 的角度清理代码本身 还是你能想到的任何其他东西 该算法应输出如下所示的分页 1 2 3 6 7 8 97 98 99 or
  • 使用 ImapMailbox.php 按日期对 Imap 邮箱进行排序

    我有一个客户支持系统 它会在收到电子邮件时创建电子邮件 我曾经使用后缀和特殊配置来获取电子邮件以添加额外的功能 例如 我想包含从电子邮件发送的附件 系统不会执行此操作 而是创建一封带有主题的电子邮件 因此我可以通过匹配主题来包含附件 我使用
  • 这是过滤数据并防止 SQL 注入和其他攻击的安全方法吗?

    我创建了两个简单的函数来在插入数据进入 mysql 查询之前对其进行过滤 对于表单字段 我还使用正则表达式来单独检查每个字段 Form filter function filter var HTML is not allowed var s
  • 如何在 SQLite 中获取最后插入的 ID?

    SQLite 中是否有任何内置函数可以获取最后插入的行 ID 例如 在 mysql 中我们有LAST INSERT ID 这种功能 对于 sqlite 任何可用于执行相同过程的函数 请帮我 Thanks SQLite 这可以使用SQLite
  • 如果端口不是 80,.htaccess 重定向到错误页面

    我正在运行一个便携式服务器 http www server2go web de 通过 USB 棒 问题是我还在我的本地计算机上安装了 WAMP 并且 Apache 不知何故在 Windows 启动时启动 因为一些我现在不记得的随机原因并且无
  • 使用 CodeIgniter 加载视图文件夹外的视图

    我需要从以下范围之外加载视图 this gt load gt view 这似乎是从base application views目录 如何从外部访问视图 application 目录 我想我将不得不延长CI Loader class这是最好的
  • Zend 框架会话丢失

    我有一个注册表单 当用户注册时 它会将他重定向到他的页面 在 Firefox 和 Chrome 中一切正常 但在 Internet Explorer 中则正常 看起来保存用户信息后 会话就关闭了 并且不会将用户重定向到他的页面 我该如何解决
  • CakePHP Unfilled 单选按钮在提交时更改为不需要的值

    我有这个表单元素 form gt input ChecklistResponseGovernmentInfo driversLicenseIsOnline array type gt radio empty gt true options
  • FPM 与 apache2 无法工作(权限被拒绝)

    我正在尝试使用 apache fastcgi 和 fpm 设置一个 Debian Web 服务器 但我越来越恼火 一旦我停用 mod php 我就会收到以下错误 2014 年 5 月 22 日星期四 12 16 10 错误 客户端 xxx
  • php 包含打印 1

    我编写了以下代码 当我将 include 函数与旨在输出到页面的函数 例如 或 echo include foo php 结合使用时 它会返回包含内容 但在已包含的内容后面带有 1 echo include foo php 应该 inclu
  • 从 PHP 启动守护进程

    对于网站 我需要能够启动和停止守护进程 我目前正在做的是 exec sudo etc init d daemonToStart start 守护进程已启动 但 Apache PHP 挂起 做一个ps aux透露sudo它本身变成了僵尸进程
  • Twitch API - 无法使用 PHP 获取身份验证令牌

    stackoverflow 的成员们大家好 我不是一个喜欢寻求帮助的人 但在这种情况下 我认为这是解决我的问题的唯一方法 谷歌并没有给我太大帮助 所以 我的问题 我想使用 Twitch API 获取一些数据 听起来很容易 我希望是这样 下面
  • zend框架验证模型中的数据而不是表单中的数据

    使用 Zend Framework 2 在我的应用程序中 要编辑数据库中的数据 可以编译 html 表单或发送 http post 请求 我的服务器作为 Web 服务实现 在第二种情况下 不会呈现表单 问题 如果当服务器收到不是从表单发送而
  • 将 Base64 字符串转换为图像文件? [复制]

    这个问题在这里已经有答案了 我正在尝试将我的 Base64 图像字符串转换为图像文件 这是我的 Base64 字符串 http pastebin com ENkTrGNG http pastebin com ENkTrGNG 使用以下代码将
  • 如何检测iPhone是否有视网膜显示屏?

    如何检测 iPhone 是否配备视网膜显示屏 有靠谱的办法吗 要么是纯 PHP 要么最好是 Zend Framework 方式来执行此操作 我通过这个弄清楚了 var retina window devicePixelRatio gt 1
  • Symfony2 - 在自定义验证器中调用 EmailValidator

    我正在创建一个自定义验证器约束来验证 联系人 类似于 John Doe 电子邮件受保护 gt 遵循Cookbook http symfony com doc current cookbook validation custom constr
  • 什么是 PHP session_start()

    它是否基于 cookie 启动当前会话 从 PHP 网站上得到的 PHP如何控制会话 如果我在用户打开我的登录页面时启动会话 我什至可以使用该会话做什么 我可以使用当前会话来获取有关登录用户的信息吗 PHP 会话系统允许您将数据安全地存储在
  • MVC 框架中的缓存策略?

    我编写了自己的小型 PHP MVC 框架 现在正在探索 PHP MVC 框架中的缓存策略 我正在考虑可以缓存什么 在哪里以及如何缓存 我的框架是简单的MVC框架 我有前端控制器 它启动应用程序 注册类自动加载 设置 php 运行时指令 最后
  • 访问 PHP 数组对象受保护的属性

    我正在尝试在 Symfony2 中上传多个文件 我正在尝试访问以下请求对象 但无法获取参数属性 如何将文件一一上传 我得到的错误 致命错误 无法访问第 66 行 var www File src Webmuch FileBundle Ent
  • Nginx 安全链接模块不适用于 php 文件,但适用于静态文件

    我在用http nginx org en docs http ngx http secure link module html http nginx org en docs http ngx http secure link module

随机推荐

  • 基本的 javascript 流程 - 在各种浏览器中

    我试图通过一个非常简单的 JavaScript 示例来学习 JavaScript 中的流程 但是三种浏览器 Chrome IE 和 Firefox 这三种浏览器都显示不同的流程模式和不同的最终结果 我知道会出现跨浏览器问题 但这个问题非常简
  • 将 bsxfun 与匿名函数一起使用

    在尝试理解 bsxfun 函数之后 我尝试在脚本中实现它以避免循环 我试图检查数组中的每个单独元素是否包含在一个矩阵中 返回一个与分别包含 1 和 0 的初始数组大小相同的矩阵 我创建的匿名函数是 myfunction x y sum an
  • 在 jQuery 对话框中时,asp.net 表单控件不可读,如何修复它?

    我有一个带刺的 我有一个 ASP NET Web 表单页面 在页面中 我有一个 div 标签 我已将其设置为用作 jQuery 对话框 div 中是一些 jQuery 控件 我打开对话框并单击其中一个按钮开始回发 当页面回发时 隐藏代码尚未
  • 局部变量以下划线开头是个好习惯吗?

    我刚刚接触 Ruby 并且来自 Java 和 C C 环境 在用 Ruby 编写第一个小项目时 我不知何故习惯了让所有局部变量都以下划线开头 我想我这样做的主要动机是更好的可读性以及与方法调用的区别 原则上只有三种类型的变量 global
  • PushViewController 是否保留控制器?

    我正在努力找出 PushViewController 是否保留控制器 目前我有以下代码 有效 ColorController colorController ColorController alloc initWithNibName nib
  • 内部类扩展

    在java中 假设我有以下类 public class A protected class B 我可以通过执行以下操作来扩展内部类吗 public class C extends A protected class D extends B
  • 任务并行库如何在终端服务器或 Web 应用程序中扩展?

    据我所知 当我执行 Parallel For 和类似构造之类的东西时 TPL 使用工作窃取队列来执行其任务 如果我理解正确的话 该构造将启动许多任务 每个任务将开始处理项目 如果其中一个任务完成了分配给他们的物品 它将开始从其他尚未完成的任
  • ionic 2:禁用登录表单输入焦点上的滚动

    我有一个使用 ionic 2 创建的登录表单 我想在键盘显示时禁用滚动 以下是示例 这是html登录的代码
  • 将外部属性添加到县的 TopoJSON 文件中

    相关问题 https stackoverflow com questions 17450273 adding external properties to topojson file 我正在尝试将外部属性添加到 topojson 文件 us
  • C# 6.0 TFS 构建

    我正在 Visual Studio 2015 CTP 中试用 C 6 0 的新功能 但我的项目无法在 TFS 2013 中构建 并且视觉工作室在线 http www visualstudio com en us products what
  • 获取嵌入式 IronPython v2 中的最后一条语句结果

    Mike Stall 博客中的这篇文章 https web archive org web 20151031235957 http blogs msdn com 80 b jmstall archive 2005 09 01 howto e
  • 确定连接到 Qt 中给定插槽的信号

    我已将自己注入到 Qt 应用程序中 并试图找出给定插槽连接到的信号 但找不到任何有关执行此操作的信息 是否有一种开箱即用的机制可以做到这一点 如果是这样 这是否暴露给 QtScript 如果没有 我可以很容易地将其包裹起来 如果没有这样的机
  • 如何检测图像是照片、剪贴画还是线条画?

    识别图像类型的最佳方法是什么 rwong s https stackoverflow com users 377657 rwong answer https stackoverflow com a 3446199 18437 on 这个问题
  • 如何使 iFrame 在单击按钮时全屏显示?

    我想使用 JavaScript 通过单击按钮使 iFrame 显示在全屏上 您必须做两件事 使窗口全屏显示 然后填满整个尺寸 您可以使用 JS 使其全屏显示 例如这个答案 https stackoverflow com
  • 如何使用XMPP框架检索成员聊天室列表?

    如何使用XMPP框架检索聊天室的成员列表 我尝试使用 void xmppRoom XMPPRoom sender didFetchMembersList NSArray items 但它返回一个空数组 有人请帮帮我吗 当您加入房间委托时 x
  • 在 Haskell 中比较两个项的构造函数的一般方法[重复]

    这个问题在这里已经有答案了 给定某些数据类型的两个项 t1 t2 是否有某种方法可以检查 t1 和 t2 是否以相同的构造函数开头 而不需要对构造函数进行一些详尽的案例或模式匹配 就像如果我的类型是 Either a b 那么我想要 che
  • 如何创建 50 个州的地图(而不仅仅是 48 个州)

    如何用 R 制作 50 个州的地图 看起来人们创建的所有示例地图都只是 48 级以下的地图 有很多方法可以做到这一点 就我个人而言 我发现谷歌拥有最有吸引力的地图 我建议ggmap googleVis 和 或RgoogleMaps 例如 r
  • 测试 WebApi 控制器 Url.Link

    我有以下控制器操作 public void Post Dto model using var message new MailMessage var link Url Link ConfirmAccount new model Id mes
  • 在 Ruby 中导出环境变量

    如何将 Ruby 脚本中的环境变量导出到父 shell 例如 实现一个简单的实现readbash 内置 usr bin ruby varname ARGV 0 ENV varname STDIN gets but have varname
  • Eloquent - 更新集合中的所有模型

    我想在集合的所有模型中设置某个属性 在简单的 SQL 中 UPDATE table SET att foo WHERE id in 1 2 3 我的代码 models MyModel findMany 1 2 3 models gt upd