Не удалось получить значение из второй таблицы соединений в предложении whereHas - PullRequest
0 голосов
/ 01 января 2019

У меня проблема, мне нужно искать, если пользователь находится в определенном радиусе.У меня есть две таблицы объединения пользователей, адреса и радиуса поиска ... запрос получит два параметра lat и log.

$query = Users::query();
$query->with('location', 'serach_area');
$query->whereHas('location', function ($query) use  ($latitude, $longitude) {
    $query->select('users_locations.latitude as latitude', 'users_locations.longitude as longitude', 'users_locations.user_id', 'search_area.radius s radius')
        ->selectRaw("(6371 * acos(cos(radians('.$latitude.')) * cos(radians(latitude)) * cos(radians(longitude) - radians('.$longitude.'))   sin(radians('.$latitude.')) * sin(radians(latitude)))) as haversine")
        ->having("haversine", "<", "radius");    });

Я не могу получить область поиска

...