cgi/eloquent

扩展Laravel Eloquent ORM。

dev-master 2018-01-17 01:23 UTC

README

Latest Stable Version Total Downloads Latest Unstable Version License Monthly Downloads Daily Downloads composer.lock

此包允许您简单地调用 $model->join($relation) 来在您关系声明的键上连接Laravel Eloquent关系表。列将自动选择,连接的记录将作为结果集合中的模型进行初始化。Laravel的Eloquent通常支持连接,但内部调用底层的查询构建器,因此期望以表名和连接键作为参数。

安装

Eloquent Joins 可通过Composer和Packagist安装。

使用

使用特质

在模型中简单地使用Llama\Database\Eloquent\ModelTrait

namespace App;

use Llama\Database\Eloquent\ModelTrait;

class User
{
    use ModelTrait;

    protected $table = 'users';

    public function orders()
    {
        return $this->hasMany(\App\Order::class);
    }
}

$users = \App\User::join('orders')->get();

在上面的例子中,$users 将包含所有具有对应Order模型的User模型集合(因为我们执行了内连接)。每个对应的Order模型都可以在User模型的$orders属性中找到(通常这会包含具有匹配外键的模型集合)。

您可以对多个join()调用进行字符串连接,以及使用底层数据库对象上通常可用的其他连接类型(如joinWhere()leftJoin()等)。

许可证

Eloquent Joins 是免费软件,许可协议为[MIT许可证]。这允许您将Eloquent Joins用于商业目的,但任何衍生作品(对代码的改编)也必须以相同的许可证发布。