阅读(4913)
赞(9)
Laravel 8 查询关联
2021-07-08 09:44:45 更新
由于 Eloquent 关联的所有类型都通过方法定义,你可以调用这些方法,而无需真实执行关联查询。另外,所有 Eloquent 关联类型用作 查询构造器,允许你在数据库上执行 SQL 之前,持续通过链式调用添加约束。
例如,假设一个博客系统的 User
模型有许多关联的 Post
模型:
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class User extends Model
{
/**
* 获取该用户的所有文章
*/
public function posts()
{
return $this->hasMany('App\Models\Post');
}
}
你可以查询 posts
关联,并为其添加额外的约束:
$user = App\Models\User::find(1);
$user->posts()->where('active', 1)->get();
你可以在关联上使用任意 查询构造器 方法,请查阅查询构造器文档,学习那些对你有用的方法。