Я использую Laravel Laravel Befriended для реализации пользовательского блока. Когда я фильтрую заблокированных пользователей по withoutBlockingsOf($model)
с левым входом, получаю
`"message": "SQLSTATE[23000]: Integrity constraint violation: 1052 Column 'id' in where clause is ambiguous (SQL: select `users`.*, , ROUND(6371 * acos(cos(radians(22.5697)) * cos(radians(`latitude`)) * cos(radians(`longitude`) - radians(88.3697)) + sin(radians(22.5697)) * sin(radians(`latitude`)))) as distance from `users` left join `locations` as `l` on `users`.`id` = `l`.`user_id` where `role_id` = 2 and `id` not in (691, 686) and `users`.`deleted_at` is null order by `created_at` desc limit 50)" `
Без leftJoin, все в порядке.
Контроллер:
User::withoutBlockingsOf($user)
->leftJoin('locations as l', 'users.id', '=', 'l.user_id')
->select('users.*', DB::raw('ROUND(6371 * acos(cos(radians(' . $lat . ')) * cos(radians(`latitude`)) * cos(radians(`longitude`) - radians(' . $lng . ')) + sin(radians(' . $lat . ')) * sin(radians(`latitude`)))) as distance'))
->get();