我在这里有一个控制器:平台。
我正在尝试做类似的事情:
/:platform_name /使用参数重定向到其show。这就是我所拥有的:
map.resource :platform,
:as => ':platform_name',
:platform_name => /pc|ps2|ps3|wii|ds|psp|xbox-360/
工作正常。我还有其他的资源,而且他们都在访问。但。 问题是,我只有那些平台名称,但是当它没有罚款另一条路线时,它就会落在这上面。 如果我尝试 / whatever / ,它会查找 platform_name =>任何
我原以为它会落入map.connect':controller /:action /:id'规则。
当我做:platform_name => / pc | ps2 | ps3 | wii | ds | psp | xbox-360 / ,并不期望此规则仅适用于正则表达式适用的情况?
我怎么能限制这个?
答案 0 :(得分:0)
尝试更改:
/pc|ps2|ps3|wii|ds|psp|xbox-360/
到
/^(pc|ps2|ps3|wii|ds|psp|xbox-360)$/
答案 1 :(得分:0)
也许你可以试试
:requirements => { :platform_name => /pc|ps2|ps3|wii|ds|psp|xbox-360/ }
或
:conditions => { ... }