2012-04-18 46 views
0

什么是match 'aliased/route/here' => 'pointed/route/here'等价?的Rails 2.3.8路由等价的Rails 3比赛

我敲在墙上我的头在这里,因为我不能让设计不同的登录URL的同型号的工作。如果有人有关于这个问题的提示,我很感激!

目前的版本我的路线是这样的:

auth.devise_for :somerole, :class_name => 'MainRole', :as => 'niceurl' 
auth.devise_for :anotherrole, :class_name => 'MainRole', :as => 'otherurl' 

:class_name选项没有完成所有的工作:我还需要创建所有每次我定义角色此时,相应的帮手。

我目前使用的设计1.x的在Rails 2.3.8的环境,所以这就是为什么在Github提供,并提到对其他问题的解决将无法正常工作。

在此先感谢!

更新

好了,所以我找到了一个解决方法制订工作:

def current_mainrole 
    current_somerole || current_anotherrole 
end 
:我在 application_controller收集我的所有不同的角色,并将其分配给mainrole像这样创建的方法

恐怕会介绍一些securityleaks,它真的看起来像一个黑客,所以我希望还是有人能帮助我的路由问题。

回答

0

在2.3.8相当于是

map.contact '/contact', :controller => 'pages', :action => 'contact' 

所以,你可以定制线,以您的需求。

看看这些链接进一步阅读:
Ruby on Rails Tutorial 2.3
Ruby on Rails Guides 2.3.8

希望我帮助。

+0

我熟悉命名路线,但与使用设计的实在是有点不只是指着一个控制器和行动,不幸的是更为复杂的。制定也需要你使用的URL考虑命名助手之类的东西,所以我真的想一个URL指向另一个。 – 2012-04-18 15:07:21

+0

我的appologies。我用设计玩的小小就是Rails 3,我决定写我自己的。对我来说这是一个糟糕的假设...... – 2012-04-18 22:41:48