使用GPS参数处理导轨路线

Chr*_*own 6 parameters routing ruby-on-rails ruby-on-rails-3

我想在我的rails应用程序中创建一个路径来处理gps坐标参数.目的是找到给定位置附近的餐馆.

这是我开始的:
match "/restaurants/near/:lat/:lng(/:range)", :to => "restaurants#near", :as => "near", :constraints => {:range => /\d+/}

似乎路由器有浮动参数的问题,像/restaurants/near/53.0123/10.5678这样的网址无法识别.您是否有处理铁路网址中GPS坐标的解决方案或最佳实践?

谢谢!

eve*_*ans 11

问题是由于Rails尝试使用"点"来搜索格式(.:format) 所以,你可以添加一些约束来修复它,例如:

match "/restaurants/near/:lat/:lng(/:range)", :to => "restaurants#near", :as => "near", :constraints => {:lat => /\-?\d+(.\d+)?/, :lng => /\-?\d+(.\d+)?/ , :range => /\d+/}
Run Code Online (Sandbox Code Playgroud)