appsero / laravel-datastore
一个用于将 Google Datastore 作为数据库驱动器的软件包。
0.0.6
2024-04-19 02:34 UTC
Requires
- php: ^7.2|^8.0
- ext-json: *
- google/cloud-datastore: 1.12
- illuminate/database: ^6|^7|^8|^9.0|^10.0|^11.0
- illuminate/http: ^6|^7|^8|^9.0|^10.0|^11.0
- illuminate/pagination: ^6|^7|^8|^9.0|^10.0|^11.0
- illuminate/support: ^6|^7|^8|^9.0|^10.0|^11.0
Requires (Dev)
- phpunit/phpunit: ^9.0
This package is auto-updated.
Last update: 2024-09-15 17:29:09 UTC
README
Laravel 数据存储驱动器
一个用于将 Google Datastore 作为数据库驱动器的软件包。
使用此软件包,您可以使用 查询构建器
和 eloquent
访问数据存储中的数据。
安装
您可以通过 composer 安装此软件包。
composer require appsero/laravel-datastore
如果您使用 Laravel 软件包自动发现,则无需手动添加 ServiceProvider。
无自动发现
如果您不使用自动发现,请将以下 ServiceProvider 添加到 config/app.php
文件中的 $providers
数组中。
Appsero\LaravelDatastore\DatastoreServiceProvider::class,
路线图
- 使用查询构建器读取数据(可用)。
- 使用 eloquent 模型读取数据(可用)。
- 数据插入(可用)。
- 数据更新(使用查询构建器,模型即将推出)。
- 数据删除(可用)。
- 游标分页(即将推出)。
- 关系(即将推出)。
用法
您需要在 config/database.php
文件中添加 datastore
连接。
'connections' => [ ... 'datastore' => [ 'driver' => 'datastore', 'key_file_path' => env('GOOGLE_APPLICATION_CREDENTIALS', 'gcloud-credentials.json'), 'prefix' => env('DATASTORE_PREFIX', null), ], ... ],
使用 Eloquent 模型访问
您需要扩展 Appsero\LaravelDatastore\Eloquent\Model
类而不是 Laravel 的默认 eloquent 模型类。
示例-
<?php namespace App\Models; use Appsero\LaravelDatastore\Eloquent\Model; class Project extends Model { // Your works here }
使用查询构建器访问
示例-
DB::connection('datastore') ->table('projects') ->where('project_id', '>', 5) ->skip(3) ->take(5) ->get();
它将返回一个集合。
已测试的构建器函数
- 连接
- 表
- 从
- 选择(用于投影查询)
- 类型(与表相同)
- 条件(可用:=, >, <, >=, <=)
- 限制
- 获取
- 跳过
- 排序
- 获取
- 简单分页
- 分页(与简单分页功能相同)
- 第一个
- 删除
- 插入
- 更新
- 查找/查找
贡献指南
此驱动器仍不稳定。您可以通过报告错误、修复错误、审查拉取请求等方式进行贡献。请访问 问题 部分,您可以直接开始处理一个问题。如果您想添加或修复某些内容,请按照 Laravel 贡献指南打开拉取请求。
许可
MIT 许可证(MIT)。请参阅 许可文件 了解更多信息。