【发布时间】:2019-02-12 17:49:58
【问题描述】:
在下面的代码中,我尝试获取附近的用户和距离。一切运作良好。但下面的查询将结果返回为 stdClass 对象 但我想要用户 模型对象。有可能吗?
$collection = DB::table('users')
->join('locations as l', 'users.location_id', '=', 'l.id')
->select('users.*', DB::raw('(6371 * acos(cos(radians(' . $coordinates['latitude'] . ')) * cos(radians(`lat`)) * cos(radians(`lng`) - radians(' . $coordinates['longitude'] . ')) + sin(radians(' . $coordinates['latitude'] . ')) * sin(radians(`lat`)))) as distances'))
->having('distances', '<', 32.688888)
->orderBy('distances', 'ASC')
->get();
输出:
Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => stdClass Object
(
)
)
)
我想要
Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => App\Models\User Object
(
)
)
)
【问题讨论】:
标签: laravel eloquent query-builder laravel-query-builder