Laravel 5.2 принадлежит, отношения не работают

Я хотел бы получить дополнительную информацию о пользователях из таблицы подразделений.

А не работает почему?

BadMethodCallException в строке Macroable.php 81: деление метода
не существует.

класс AdminsController расширяет контроллер

public function getUserIndex()
{
$users = User::all()->division();
dd($users);
}

Класс User расширяет Authenticatable

public function division()
{
return $this->belongsTo('App\Division', 'division_id');
}

Классовое подразделение расширяет модель

public function users()
{
return $this->hasMany('App\User');
}

Таблица пользователей

$table->foreign('division_id')->references('id')->on('divisions')->onUpdate('cascade');

Таблица делений

$table->increments('id');

1

Решение

division() отношение определяется для каждой отдельной строки таблицы. Позвонив на all()вы пытаетесь получить отношения для всех строк.

Вы должны быть в состоянии использовать что-то вроде:

public function getUserIndex()
{
$users = User::all();
foreach ($users as $user) {
dd($user->division());
}
}
0

Другие решения

Других решений пока нет …