带有通配符和要求的Rails路由

时间:2011-03-16 14:25:31

标签: ruby-on-rails routes

我需要设置匹配链接的路线:

1: fixed/9731-monday-tuesday-wednesday-thursday-friday/922-another
2: fixed/potatoe

第一种情况有无限制的参数,但所有这些都是格式[数字] - [some-string]。 第二种情况只有一个参数只有caracters。

我试过这个:

   map.connect("/fixed/*param_list",
               :controller => 'first',
               :action => 'index',
               :requirements => {:param_list => /(\d+-[\w-]+)/})

   map.connect("/fixed/:category",
               :controller => 'second',
               :action => 'index')

然而,带有要求的第一条路线不再像通配符那样有效。它只匹配像 / fixed / 922-another 这样的ulr,而不是两个以上的维度 / fixed / 922-another / 123-and and more

所以我的问题是:是否可以通过要求参数化通配符路线?以及如何在我的案例中设置它。

1 个答案:

答案 0 :(得分:0)

看起来你的正则表达式是错误的。为了处理多个参数,它不应该是/\d+-[\w-]+(\/\d+-[\w-]+)*/吗?