arafatkn / laravel-datastore
0.0.4
2021-11-22 03:22 UTC
Requires
- php: ^7.3|^8.0
- ext-json: *
- google/cloud-datastore: ^1.12
- illuminate/database: ^6|^7|^8
- illuminate/http: ^6|^7|^8
- illuminate/pagination: ^6|^7|^8
- illuminate/support: ^6|^7|^8
Requires (Dev)
- phpunit/phpunit: ^9.0
This package is auto-updated.
Last update: 2022-06-29 09:05:03 UTC
README
一个用于将Google Datastore用作数据库驱动程序的软件包。
使用此软件包,您可以使用查询构建器
和eloquent
从数据存储中访问数据。
安装
您可以通过Composer安装此软件包
composer require arafatkn/laravel-datastore
如果您使用Laravel Package Auto-Discovery,则不需要手动添加ServiceProvider。
不使用自动发现
如果您不使用自动发现,请将以下ServiceProvider添加到config/app.php
文件中的$providers
数组中。
Arafatkn\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模型访问
您需要扩展Arafatkn\LaravelDatastore\Eloquent\Model
类而不是Laravel的默认eloquent模型类。
示例-
<?php namespace App\Models; use Arafatkn\LaravelDatastore\Eloquent\Model; class Project extends Model { // Your works here }
使用查询构建器访问
示例-
DB::connection('datastore') ->table('projects') ->where('project_id', '>', 5) ->skip(3) ->take(5) ->get();
它将返回一个集合。
测试构建器函数
- connection
- table
- from
- select(用于投影查询)
- kind(与table相同)
- where(可用:= , > , < , >= , <= )
- limit
- take
- skip
- get
- simplePaginate
- paginate(与simplePaginate功能相同)
- first
- delete
- insert
- upsert
- find / lookup
贡献指南
此驱动程序尚不稳定。您可以通过报告错误、修复错误、审查拉取请求等方式进行贡献。转到问题部分,您可以立即开始处理一个问题。如果您想添加或修复某些内容,请按照Laravel贡献指南打开一个拉取请求。
贡献者
致谢
特别感谢 Appsero给我实施这个出色软件包的机会。
许可证
MIT许可证(MIT)。请参阅许可证文件以获取更多信息。