Я пытаюсь объединить две таблицы с помощью Laravel (только начал использовать).Одна таблица содержит информацию о пользователе, а другая таблица содержит идентификаторы друзей пользователей.
Таким образом, у одного пользователя может быть несколько друзей.Я сделал это пользовательский класс:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class User extends Model
{
protected $table="user_info";
public function getFriends()
{
//user_id is the column in the user_friends table that should be linked to the id table in this class table (user_info)
return $this->hasMany('App\UserFriends','user_id','id');
}
}
И другой класс (UserFriends)
namespace App;
use Illuminate\Database\Eloquent\Model;
class UserFriends extends Model
{
protected $table="user_friends";
}
Затем в контроллере я вызываю
$t = $this->sql_obj->getFriends()->toSql();
Однако, если яраспечатайте результат этого, он возвращает это:
select * from `user_friends` where `user_friends`.`user_id` is null and `user_friends`.`user_id` is not null
Почему он не присоединяется к таблицам?
Спасибо за любую помощь!