我需要通过多个名称访问一个路径.在我的路线
get '/route' => 'controller#edit',:as => 'name_a' get '/route' => 'controller#edit',:as => 'name_b'
这很好,但加载路由表什么也没有.从我对文档的理解:定义一个辅助方法时调用.
所以我去了我的ApplicationController并补充说
alias_method :name_b,:name_a
我从routes.rb中删除了第二行
但是失败与Uncaught异常:ApplicationController类的未定义方法name_a
有没有一个适合的方法来为单个路径命名两个名字?
=================编辑====================
阐述:
我使用Devise宝石管理2种用户的会话,注册,锁定等,让我们称之为Admin和Guest.宝石是非常好的,但它要求确定的路由名称行为正常.
在我的情况下,就设计而言,只有注册过程是不同的,所以我试图构建一个如下所示的结构:
app controllers users admin registration_controller.rb guest registration_controller.rb session_controller.rb password_controller.rb registration_controller.rb
Admin和Guest控制器继承自Devise所继承的上述registration_controller.
现在,要正常工作,Devise需要使用名称guest_user_password和admin_user_password来创建或删除密码检索.在我的情况下,两者都在相同的路径,所以我想要两个名称重定向到相同的“用户/密码”控制器.
更重要的是,这就是为什么我真的想要嘲笑.这是我的观点不应该关心在重定向到密码检索控制器时是否处理管理员和访客路由.两者都是用户,所以我想使用user_password两者.
所以我的问题. 原文链接:https://www.f2er.com/ruby/266382.html