У меня есть 2 модели: Пользователь и Команда .- Пользователь принадлежит команде.- У команды много пользователей.
А вот и моя User
модель.
<?php
namespace App;
use Illuminate\Notifications\Notifiable;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Foundation\Auth\User as Authenticatable;
class User extends Authenticatable {
use Notifiable, HasRole;
protected $guarded = [];
protected $with = ['team', 'role'];
/**
* The attributes that should be hidden for arrays.
*
* @var array
*/
protected $hidden = [
'password', 'remember_token',
];
public function team()
{
return $this->belongsTo(Team::class);
}
}
Team
модель:
class Team extends Model {
protected $with = ['leader'];
protected static function boot()
{
parent::boot();
static::addGlobalScope('membersCount', function ($builder) {
$builder->withCount('members');
});
}
public function leader()
{
return $this->belongsTo(User::class, 'leader_id');
}
public function members()
{
return $this->hasMany(User::class);
}
}
Когда я пытался рватьсязагрузить team
в пользовательскую модель с помощью protected $with = ['team'];
, в результате возникает ошибка
Maximum function nesting level of '512' reached, aborting!
Кто-нибудь может мне помочь?Спасибо!