Ruby on rails Rails路由发送带点和int的字符串
我是rails的新手 我尝试发送这样的字符串:search param:“55.675155,21.833466”和2 as:id param。。。 但有些事情不好 我没有得到路线匹配[get]“/exchanger\u list/get\u exchanger\u via\u coordinates/ 我的路线文件:Ruby on rails Rails路由发送带点和int的字符串,ruby-on-rails,routing,Ruby On Rails,Routing,我是rails的新手 我尝试发送这样的字符串:search param:“55.675155,21.833466”和2 as:id param。。。 但有些事情不好 我没有得到路线匹配[get]“/exchanger\u list/get\u exchanger\u via\u coordinates/ 我的路线文件: match 'exchanger_lists/get_exchangers_via_coordinates/:search,:id' => 'exchanger_lis
match 'exchanger_lists/get_exchangers_via_coordinates/:search,:id' => 'exchanger_lists#get_exchangers_via_coordinates'
但那个么url在浏览器中又该怎么看呢
如何以Rails的方式做到这一点?我读过doc的,但100%上有些东西不清楚(
如何配置我的路线以及如何从浏览器呼叫?您可以按如下方式更改路线:
match 'exchanger_lists/get_exchangers_via_coordinates/:x/:y/:id' => 'exchanger_lists#get_exchangers_via_coordinates'
params[:x]和params[:y]将保存您的坐标。我认为这是比在一个param中保存to坐标更漂亮的代码
match 'exchanger_lists/get_exchangers_via_coordinates/:search,:id' => 'exchanger_lists#get_exchangers_via_coordinates',
constraints: { search: /[^\/]+/ }
从中,是否有交换器列表控制器,其方法是通过坐标获取交换器列表?请尝试用斜杠代替逗号:
:search/:id
我不知道这是个问题,但在URL@juanpastas是的,我有,如果我在url中传递类似交换器列表/通过坐标获取交换器之类的内容,一切正常/535,1但是使用字符串(点,逗号)是不好的。而且你的解决方案也没有帮助。也许这可以帮助你:我需要将它作为一个参数传递!这就是问题所在坐标-一个参数)我从其他移动应用程序中得到这个参数,我没有开发,只是使用了而已。我通过坐标/:搜索/:距离更改为“交换器列表/获取交换器”,一切正常,但当我尝试以浮点形式发送距离(例如0.5)时,有些不好…对距离约束执行相同的操作:{search:/[^\/]+/,距离:/[^\/]+/}
heh,等等……但是如果我调用json视图,该怎么办呢?如果我编写……json它不理解,可能类似于?距离:/[^\/]+(?=\.html\z\124;\.json\z)/但是当.html默认不被写入时该怎么办呢?如果是空的,那么是html,如果添加了.json,那么是json。你必须在5.5.json/[^\/]+?(?!...json)/
中编写一个与5.5
匹配的regexp。我不理解regexp:p