如何将 Request->all() 与 Eloquent 模型一起使用

2024-04-18

我有一个 lumen 应用程序,需要在其中存储传入的 JSON 请求。如果我写这样的代码:

public function store(Request $request)
  {
    if ($request->isJson())
    {
      $data = $request->all();

      $transaction = new Transaction();
      if (array_key_exists('amount', $data))
        $transaction->amount = $data['amount'];
      if (array_key_exists('typology', $data))
        $transaction->typology = $data['typology'];

      $result = $transaction->isValid();
      if($result === TRUE )
      {
        $transaction->save();
        return $this->response->created();
      }

      return $this->response->errorBadRequest($result);
    }

    return $this->response->errorBadRequest();
  }

它工作完美。但是在这种模式下使用 Request 很无聊,因为我必须检查每个输入字段以将它们插入到我的模型中。有没有一种快速的方法向模型发送请求?


您可以对 Eloquent 模型进行批量分配,但您需要首先在模型上设置允许批量分配的字段。在您的模型中,设置您的$fillable array:

class Transaction extends Model {
    protected $fillable = ['amount', 'typology'];
}

这将允许amount and typology可批量分配。这意味着您可以通过接受数组的方法(例如构造函数或fill()方法)。

使用构造函数的示例:

$data = $request->all();
$transaction = new Transaction($data);

$result = $transaction->isValid();

一个使用的例子fill():

$data = $request->all();
$transaction = new Transaction();
$transaction->fill($data);

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

如何将 Request->all() 与 Eloquent 模型一起使用 的相关文章

随机推荐

  • 函数原型中的参数

    我的问题是 当我用 C 编写函数原型时 如下所示 void foo int vector 做同样的事情 void foo int vector MAX LENGTH 对于函数 总是作 为指针传递 代码是一样的吗 提前致谢 这很微妙 C 中的
  • 如何在 .NET 远程处理期间使用自定义序列化?

    我编写了一个自定义序列化例程 它不使用 ISerialized 或 SerialzableAttribute 将对象保存到文件中 我还远程处理这些相同的对象 并希望使用相同的序列化技术 但是 我不想实现 ISerialized 因为我的序列
  • 我如何将 apache math 与 scala 一起使用?

    我正在尝试将 apache math 与 scala 结合使用 但无法运行文档中的示例http commons apache org proper commons math userguide random html http common
  • Javascript将数组复制到新数组[重复]

    这个问题在这里已经有答案了 我想从现有数组形成一个数组 这样我就可以修改新数组而不影响旧数组 我意识到数组是可变的 这就是新数组影响旧数组的原因 E g old Apples Bananas new old new reverse 旧的也被
  • 安装 onEdit 触发器没有

    我有一个函数 旨在检测一个电子表格中的更改 如果在sheet1中进行更改 则将它们复制到另一个电子表格中相同的单元格位置 我首先尝试使用 SheetsAPI 提供的已安装的 onEdit e 函数来执行此操作 但一直遇到错误 即我无权从内置
  • 需要分步指南在 AWS 上托管网站

    我已经花了一周时间浏览如何使用 AWS 我一直在使用 cpanel 我是网络新手 但有人向我推荐了 AWS 根据我从各个网站拼凑的信息 我认为我应该执行以下操作 1 将我的网站文件复制到S3 2 在EC2中设置实例 3 在EBS中设置卷并附
  • Forever.js 启动和重新启动多个脚本

    我的 Web 应用程序有 3 个主要的 Node js 组件 网站 提要和作业 为了开始这些 我永远使用 forever js var forever require forever function start name forever
  • 如何重新执行Log4j“默认初始化过程”?

    在运行时我经常创建 修改log4j记录器 附加器 级别 布局有时需要将所有内容重置回默认值 Log4j系统有明确的定义默认初始化过程 http logging apache org log4j 1 2 manual html default
  • 邮递员错误:无法建立隧道套接字,statusCode=407

    我正在客户端站点使用 Postman 的桌面版本来测试 API 但是 我无法访问 Postman 中的任何 SSL 站点 例如 Git Hib API https api github com users karlgjertsen http
  • 如何绘制频谱图函数的结果?

    在我的图中 我有两个轴 第一个是信号的时间序列 第二个是信号的时间序列ifft信号的 我想添加包含信号频谱图的第三个轴 我怎样才能做到这一点 Create the raw signal fs 40 t 0 1 fs 4 y1 sin 2 p
  • 在 Java 15 模块化设置中使用 Eclipse 中的 SWT

    我只是想获得基本的 Hello World 项目Trial0 应用程序运行使用 Eclipse 版本 2020 12 4 18 0 使用 SWT 4 18 Linux GTK Java 编译器设置为 15 遵循 有点古老 关于 JDK 1
  • 为什么我们需要将可选值显式转换为 Any?

    根据苹果文档 Any 类型表示任何类型的值 包括可选类型 如果您使用可选值 其中值 预期类型为 Any 如果您确实需要使用可选的 value 作为 Any 值 您可以使用 as 运算符显式转换 可选为Any 如下所示 var things
  • 如何在没有开发工具的情况下在运行时列出 html 元素的事件侦听器?

    有这样一个答案 我可以通过编程方式检查和修改 html 元素上的 Javascript 事件处理程序吗 https stackoverflow com questions 1436823 can i programmatically exa
  • 如何单击 ListView 中索引为 10 的位置的按钮 - Robotium 自动化?

    假设 我有一个 ListView 其中包含 20 个 ListItem 每个项目都有一个按钮 现在我想单击位于ListView中第10个位置的按钮 我如何通过robotium实现自动化 尝试这样做 不确定是否有效 get the list
  • 为列表中的每个项目制作 tkinter 按钮?

    我想制作一些按钮 其中包含从数据库返回的项目列表 所有按钮都调用传入列表项目的函数 类似这段代码但有效 这段代码的问题是所有按钮都调用该函数 item3 usr bin env python from Tkinter import root
  • 自动在资源顶部插入 ETag(资产指纹)作为注释

    如何要求 Play 在不使用第三方插件的情况下自动将文件的 ETag 作为注释插入到文件顶部附近 例如 对于 HTML 资源 插入在顶部 tag 关于如何使用 Play 框架的内置公共资产路由 指纹支持来做到这一点的答案也很棒 相关问题 用
  • numpy 数组映射并取平均值

    我有三个数组 import numpy as np value np array 1 3 3 5 5 7 3 index np array 1 1 3 3 6 6 6 data np array 1 2 3 4 5 6 数组 索引 和 值
  • 为什么asp.net 5.0预览版没有身份验证-web api模板-

    我在新的 Visual Studio 2015 中创建了一个 Web 项目 我可以选择 asp net 4 6 或 5 0 预览 Web api 模板 老4 6有 身份验证 但我想使用新的 5 0 预览版 Web api 但是这个模板缺少认
  • excel中=if(isnumber(search)))公式可以做多个选项吗?

    此公式在单元格 I3 内查找字符串 BFA 如果找到 则返回 BFA 如果不是 则返回 否 IF ISNUMBER SEARCH BFA I3 BFA No 如何修改它以同时适用于多个字符串 例如 如果找到 BFA MFA BA MA 中的
  • 如何将 Request->all() 与 Eloquent 模型一起使用

    我有一个 lumen 应用程序 需要在其中存储传入的 JSON 请求 如果我写这样的代码 public function store Request request if request gt isJson data request gt