Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails路由:匹配第一个引用_Ruby On Rails_Ruby On Rails 4_Routes - Fatal编程技术网

Ruby on rails Rails路由:匹配第一个引用

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

我有如下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]+/}

您可以使用这种类型的路由

get "/page/:id/:misc" => "yourcontroller#action"

这将改变url结构。没有办法匹配routes中的第一个连字符吗?签出4.2指定约束谢谢。在那里发现约束可以采用正则表达式。