このクエリビルダーを雄弁に変換する方法はありますか?
$users = DB::table('connections')
->join('locations','connections.to_user','=','locations.user_id')
->join('users','connections.to_user','=','users.id')
->select(
DB::raw("*, IF((
3959 * acos(
cos(radians(".$lat."))
* cos(radians(latitude))
* cos(radians(longitude) - radians(".$lng."))
+ sin(radians(".$lat."))
* sin(radians(latitude)))
) < ".$distance.",true,false) near,(
3959 * acos(
cos(radians(".$lat."))
* cos(radians(latitude))
* cos(radians(longitude) - radians(".$lng."))
+ sin(radians(".$lat."))
* sin(radians(latitude)))
) AS distance")
)
->where('status',3)
->orderBy("distance")
->get();
接続モデル
public function getCreatedAtAttribute()
{
return \Carbon\Carbon::parse($this->attributes['created_at'])->diffForHumans();
}
クエリビルダーを使用すると、Carbon の「diffForHumans」で created_at 属性を返すことができないためです。