我在字符串
的最后以日期格式传递网址2011-11-02T13:59:26.13Z
我可以这样做
a.sub!(/\..*/,'')
敲掉。(数字)(数字)Z并使用控制器中的时间。
如果我把时间以常规格式放在我的网址中,它可以正常工作。如果我输入上面指定的格式,我会得到一个空白页面。如果我添加我做的约束(在控制台中切断结束时工作正常,我得到一个路由(没有路由匹配[GET] ...)。我该怎么做以允许传递我需要的日期格式(我使用rails 3,如果这很重要)
答案 0 :(得分:0)
冒号是重新设置的字符,不能在URL中使用。见RFC 2366 section 2.2
另外,。 (点)用于指定rails中的格式类型,因此当它传递到路由器时,它将尝试为' 13Z'格式。
您应该以另一种不需要这些字符的格式对该时间进行编码。
E.g。
20111102135926
因为每个字段都是固定宽度,所以仍然可以使用正则表达式进行解析。
你也可以在Ruby中直接解析。