У меня есть модель для пользователей
class User
{
protected $primaryKey = 'user_id';
public function blocks()
{
return $this->belongsToMany(Block::class, 'block_user', 'blocker_id', 'blocked_id')->withTimestamps();
}
}
И модель для блоков
class Block extends Model
{
protected $table = "block_user";
}
Итак, у меня есть две таблицы: одна для информации о пользователях, а другая - когда одна блокирует другую (сводная таблица), поэтому user_id
в таблице пользователей является как локальной, так и внешней.
Проблема в том, что когда я хочу получить, если пользователь заблокировал другого пользователя, он возвращает сообщение об ошибке: Syntax error or access violation: 1066 Not unique table/alias: 'block_user'
$user = User::where('user_id', 1)->first();
dd($user->blocks->first_name);
Как я могу это исправить? Спасибо