怎样在控制器中获取当前route信息?

比如说我定义了两个资源,一个是普通的,一个是nested的

[code="ruby"]map.resources :photos
map.resource :my, :controller => 'users' do |account|
account.resources :photos
end[/code]

我如何在photos_controller里判断是那条route?
[b]问题补充:[/b]
qichunren, 呵呵, 我也是蕲春人

这个url里面没有user_id
是这样的/my/photos/1, user是resource, 不是resources
在photos_controller的show中取不到params[:user_id]

哦,没有注意。

我看这应该是你设计的问题,根据需求,你应该再抽出一个controller,复杂度降低了,而且架构也清楚了。

这个很简单的,因为这两个规则的路由生成的url不一行,你可以根据url params来判断。

在第二个routes中,url中有一个user_id参数.

if params[:user_id].blank?

map.resources :photos

else

第二个

end