在“漂亮的网址”中找到点

时间:2009-09-05 18:18:24

标签: ruby-on-rails routes actioncontroller

在我的routes.rb中我有:

map.connect ':name',
            :controller => 'my_classes',
            :action => 'show'

这完全有效,所以像这样的网址会发送这样的参数:

http://localhost:30000/awesome
Parameters: {"name"=>"awesome"}

但如果我有这样的话,我会收到这个错误:

http://localhost:30000/weak.sauce
ActionController::RoutingError (No route matches "/weak.sauce" with {:method=>:get}):

我怎样才能解决这个问题?

1 个答案:

答案 0 :(得分:5)

你可以尝试

map.connect ':name',
            :controller => 'my_classes',
            :action => 'show',
            :name => /[a-zA-Z\.]+/

或使用您想要的任何正则表达式。 (我建议的那个应匹配任何字母或点组合 - weak.sauceweak...sauce.weak.sauce.等。