bogdanghervan / irradiate
在 Laravel 优质之上进行数据库的魔法操作。
6.1.1
2022-05-31 17:03 UTC
Requires
- php: ^7.2|^8.0
- illuminate/database: >=6.0
README
数据库的魔法操作在 Laravel 优质之上。这个包包含了一些处理 Laravel 中大量数据的便利功能,然而它还不完整,因为它只实现了 MySQL 和 SQLite 语法(贡献)。
功能
批量插入或更新
这通过 MySQL 中的 INSERT ... ON DUPLICATE KEY UPDATE
和 SQLite 中的 INSERT ... ON CONFLICT DO UPDATE
实现。
缓冲插入
提供了一种服务,用于在内存中收集数据,并在达到阈值时将其刷新到数据库。
遗留功能
- 同时分块结果和使用限制
- (MySQL 仅限) 在连接丢失时重试开始数据库事务(在较新版本的 Laravel 中不再必要)
安装
只需在 Laravel 项目的根目录下运行此命令
composer require bogdanghervan/irradiate
配置
要在 Laravel 中开始使用此包,请将以下内容添加到 config/app.php
文件中的提供者列表
'Irradiate\Database\DatabaseServiceProvider',
此外,所有模型都应继承自 \Irradiate\Database\Eloquent\Model
。理想情况下,应用程序级别应该已经有一个通用基模型,所有具体模型都从这个基模型扩展而来,因此请确保这个基模型在 Irradiate 中扩展。
现在你可以开始了!
局限性
仅支持 MySQL 和 SQLite。
贡献
欢迎 Pull 请求。所有贡献都应遵循 PSR-2 编码标准。
许可证
Irradiate 采用 MIT 许可证。