Вы пропустили точный внешний ключ между таблицей пользователей и таблицей типов пользователей.
Во-первых, вы определили, что внешний ключ вашей пользовательской таблицы является базой ut_id того, что у вас было в ваших отношениях. На этом
/**
* Get the user type that user has.
*/
public function users(){
return $this->belongsTo('App\Models\UserType', 'ut_id', 'id');
}
Во-вторых, в вашей модели типа пользователя вы использовали внешний ключ к таблице пользователя с именем 'user_type_id', который вначале вы назвали его как 'ut_id' в вашей таблице пользователей , На этом
/**
* The primary key associated with the table.
*
* @var string
*/
protected $primaryKey = 'ut_id';
/**
* Get the user associated with the user type.
*/
public function users(){
return $this->hasOne('App\Models\Users', 'user_type_id', $primaryKey);
}
Вы должны сопоставить эти внешние ключи, которые вы использовали для решения вашей проблемы.
Теперь, чтобы получить всех ваших пользователей с их типами, ваш запрос должен выглядеть следующим образом.
$users = Users::with('users')->get();
при условии, что ваша пользовательская таблица имеет эти отношения
public function users(){
return $this->belongsTo('App\Models\UserType', 'ut_id', 'id');
}
, а ваша модель типов пользователей имеет эти отношенияhio
public function users(){
return $this->hasOne('App\Models\Users', 'ut_id', $this->primaryKey);
}