Ruby on rails Rails路由:匹配第一个引用
我有如下url:Ruby on rails Rails路由:匹配第一个引用,ruby-on-rails,ruby-on-rails-4,routes,Ruby On Rails,Ruby On Rails 4,Routes,我有如下url: http://example.com/page123-some-random-words 我如何创建一个rails路由来提供以下两个参数: id=123 misc=一些随机词 这是我尝试过但不起作用的方法: get'页面(:id)-(:misc) 这给了我: id=123一些随机的 misc=words 解决方案: 以下是最终奏效的方法: get'page(:id)-(:misc)=>“posts#index”,约束:{:id=>/[0-9]+/}您可以使用这种类型的路由 g
http://example.com/page123-some-random-words
我如何创建一个rails路由来提供以下两个参数:
id=123
misc=一些随机词
这是我尝试过但不起作用的方法:
get'页面(:id)-(:misc)
这给了我:
id=123一些随机的
misc=words
解决方案:
以下是最终奏效的方法:
get'page(:id)-(:misc)=>“posts#index”,约束:{:id=>/[0-9]+/}
您可以使用这种类型的路由
get "/page/:id/:misc" => "yourcontroller#action"
这将改变url结构。没有办法匹配routes中的第一个连字符吗?签出4.2指定约束谢谢。在那里发现约束可以采用正则表达式。