使用Ruby地理编码器按距离排序,不使用near方法



是否有办法不限制到目标位置的距离,只按距离排序?

我现在正在做这样的事情:

@positions = Position.near(@user_position.coordinates, 999999).order(:distance).paginate(page: params[:page])

但是作为一个程序员,使用这样的东西感觉是不对的。

如果有这样的东西就好了:

@positions = Position.near(@user_position.coordinates, :no_limit).order(:distance).paginate(page: params[:page])

我希望有人能帮助我。

这对程序员来说并不像看起来那么不友好。举个例子,如果你研究C,你知道int的值域没有确切的定义。即使对于Java,它的大小是精确的,它仍然是有限的,你不应该忘记它。

如果你想让你的查询更容易读,定义NO_LIMIT = 999999常数,并使用它来代替:no_limit

geocoder的创建者对类似的问题有一个回答:

我认为你最好使用一个非常大的半径。

所以可能没有别的办法了

最新更新