来自2个表的Laravel Eloquent模型数据

时间:2015-06-24 13:29:22

标签: laravel eloquent laravel-5

我刚开始使用Laravel,而且我来自使用现有数据库的其他系统。在这个系统中有2个用户表,一个有CMS的库存和一个自定义库。

我想创建一个Eloquent模型,该模型将两个表中的数据检索到一个模型中。我知道我可以使用以下内容来建立关系。

$this->hasOne('App\SecondUser', 'id', 'id);

但是这导致2个sql查询,我想在返回模型之前在一个join语句中加入来自2个表的结果。我该怎么做?

1 个答案:

答案 0 :(得分:0)

这可能会比您期望的要复杂一些。

首先,您必须使用\DB facade连接两个集合(数组),然后使用Collection make方法从这些数组重新创建Eloquent集合。

有关Collection class here

的更多信息

更简单的方法可能是使用标准的laravel关系和用户Model::user->with('relation')->get之类的东西加入它们。

但是这仍然会创建2个查询(仍然相对较快)。