当前位置: 首页 > article >正文

laravel 重写批量添加,自动维护时间戳

laravel 自带的批量添加是不会自动维护时间戳的,意思是说,使用laravel的批量添加,时间戳字段不会插入,也不会在更新的时候进行更新。

使用继承或者trait来解决这个问题,在这里感谢Mr.wen

<?php
namespace App\Models\Traits;

use Illuminate\Support\Facades\Date;
use Illuminate\Support\Facades\DB;
use Illuminate\Database\Eloquent\Model;

trait BatchTraits
{
    public function storeBatch(array $inputs): bool
    {
        if (true === $this->timestamps) {
            $time = Date::now();
            foreach ($inputs as $key => $value) {
                if (! is_null(Model::CREATED_AT)) {
                    $inputs[$key][Model::CREATED_AT] = $time;
                }
                if (! is_null(Model::UPDATED_AT)) {
                    $inputs[$key][Model::UPDATED_AT] = $time;
                }
            }
        }
        $query = DB::connection($this->getConnectionName())->table($this->getTable());

        return $query->insert($inputs);
    }
}


http://www.kler.cn/a/146965.html

相关文章:

  • 做一个 简单的Django 《股票自选助手》显示 用akshare 库(A股数据获取)
  • 微信小程序-Docker+Nginx环境配置业务域名验证文件
  • 注册中心如何选型?Eureka、Zookeeper、Nacos怎么选
  • 深度学习与计算机视觉 (博士)
  • 【机器学习:四、多输入变量的回归问题】
  • 微服务的CAP定理与数据一致性抉择
  • 关于torch.backends.deterministic和torch.backends.cudnn.benchmark
  • 解决git与huggingface项目下载速度慢或者失败的问题
  • 70-76-堆、贪心算法
  • java设计模式学习之【单例模式】
  • Spark升级中对log4j中的一些思考
  • 移动安全威胁:今天和明天的危险
  • C++类与对象(5)—流运算符重载、const、取地址
  • 《微信小程序从入门到精通》---笔记1
  • 【Github】git安装
  • 【Python】使用execute(sql)执行insert之后没有插入数据
  • 贪吃蛇小游戏基本简单布局
  • Clion+Ubuntu(WSL)+MySQL8.0开发环境搭建
  • 30天精通Nodejs--第十二天:ioredis
  • 华为OD机试 - 分月饼(Java JS Python C)
  • Vue常见的实现tab切换的两种方法
  • python大写中文转阿拉伯数字
  • C 中的指针 - 函数
  • Java游戏 王者荣耀
  • 【玩转client-go】使用client-go从POD拷贝文件出来
  • Android 13.0 开机过滤部分通知声音(莫名其妙的通知声音)