czbas23/laravel-query-client

v0.0.11 2019-06-04 13:00 UTC

This package is auto-updated.

Last update: 2024-09-04 23:58:34 UTC


README

在您的composer.json中添加此包并更新composer。

composer require czbas23/laravel-query-client

安装

Laravel 5.x

在Laravel 5.5或更高版本中,服务提供者将自动注册。在框架的旧版本中,只需将服务提供者添加到config/app.php文件中

Czbas23\LaravelQueryClient\Providers\LaravelQueryClientProvider::class,

您可以选择使用门面来缩短代码。将以下内容添加到您的门面中

'LaravelQueryClient' => Czbas23\LaravelQueryClient\Facades\LaravelQueryClientFacade::class,

使用

基本用法

$User = \LaravelQueryClient::setModel(new \App\User)
->setCrud('read')
->query([
    ['where', ['id', 1]],
    ['where', [
        ['orWhere', ['name', 'like', '%Foo%']],
        ['orWhere', ['name', 'like', '%Bar%']]
    ]],
    ['get']
])
->getResult();

Equals

$User = \App\User::where('id', 1)
->where(function ($query) {
    $query->orWhere('name', 'like', '%Foo%');
    $query->orWhere('name', 'like', '%Bar%');
})
->get();

带有关系的查询

$countUser = \LaravelQueryClient::setModel(new \App\User)
->setCrud('read')
->pushRelation('posts')
->query([
    ['has', ['posts']],
    ['count']
])
->getResult();

Equals

$countUser = \App\User::has('posts')->count();

插入数据

$result = \LaravelQueryClient::setModel(new \App\User)
->setCrud('create')
->query([
    ['create', [
        [
            'name' => 'Foo Bar',
            'email' => 'example@mail.com',
            'password' => bcrypt('secret'),
        ]
    ]],
])
->getResult();

Equals

$result = \App\User::create([
    'name' => 'Foo Bar',
    'email' => 'example@mail.com',
    'password' => bcrypt('secret'),
]);

许可协议

此Laravel查询客户端是开源软件,根据MIT许可证授权。