【问题标题】:Why is the route not finding the the decimal为什么路线找不到小数点
【发布时间】:2010-10-16 16:12:27
【问题描述】:

好的,所以我有一个我使用这个 jquery 的应用程序

$("#band_events").load("/load_events/"+ escape($('#request_artist').val()), successCallback );

效果很好,但如果 #request_artist 是 R.E.M.或带有小数的东西或奇怪的东西有问题,比如

ActionController::RoutingError (No route matches "/load_events/R.E.M." with {:method=>:get}):

这是我的路线

map.load_events '/load_events/:band', :controller => 'pages', :action => 'load_events'

任何建议

【问题讨论】:

    标签: jquery ruby-on-rails ruby ajax rails-routing


    【解决方案1】:

    我会试试的

    map.connect ... , :constraints => { :band => /.*/ }
    

    (或您喜欢的任何其他模式。)About constraints

    不过,它似乎不适用于所有版本的 rails。我很确定我以前使用过这个技巧,但现在无法让它发挥作用。所以,祝你好运。

    【讨论】:

    • 仅供参考,将:band 替换为您的路由参数名称。那个让我有点。我认为:band 很特别。
    【解决方案2】:

    要转义 URL,您应该使用 encodeURIComponent 而不是 escape

    【讨论】:

    • 这仍然失败 /load_events/R.E.M.
    • 没有路线匹配“/load_events/R.E.M.”使用 {:method=>:get}
    猜你喜欢
    • 1970-01-01
    • 2017-09-18
    • 2019-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-15
    • 2020-02-24
    • 2017-03-07
    相关资源
    最近更新 更多