Laravelコレクションにクエリを実行すると、データベースにクエリは実行されませんが、既にフェッチされたものについてクエリが実行されるということは正しくありますか?Laravelでコレクションを照会する
public function permissions()
{
return $this->belongsToMany(Permission::class, RolePermission::getModelTable(), 'role_id', 'permission_id');
}
は、次のコードクエリのデータベースをいたり、それがPHPの施設を使用して、コレクションで動作します。たとえば
、私がコレクションを返す関係がありますか?
$role->permissions->where('code','global.test')->count()
そして、私の知る限り理解し、私は関係を照会する場合は、データベースがすでにフェッチされた結果で作業をするのではなく、照会されます。
$role->permissions()->where('code','global.test')->count()
だから、基本的には、$の役割 - >権限 - ()取り込んだ結果、「オフライン」での作業が、$ロールベース>権限 - データベースに
を照会すると、どのような方法で、一般的に、より効率的であり、いつ?