我开始疑难解答“突然”破路线问题,这太问题: 设计/用户/ sign_in重定向到错误的控制器 ,并与帮助,我对这个问题的旅程1.0.3隔离在升级到1.0.4发生时,我更新到3.2.7轨道。
如你所知,我们需要在轨3.2.8,应用重要的安全补丁,但是这意味着我必须使用旅程1.0.4,它打破我的色器件的路线。 例如,我的自定义new_user_session路线欢迎#欢迎,但它被解码为设计/欢迎欢迎#不存在的。
有任何人碰到这个三角恋爱,如果是的话你是怎么做的旅程1.0.4发挥好与色器件?
被断开(根和设计击溃的路由:
devise_for :users
devise_scope :user do
get "/login" => "devise/sessions#new"
get "/register" => "devise/registrations#new"
end
match '/signout/confirm' => 'signouts#confirm'
root :to => "welcome#welcome"
================================================== ==============
编辑:2012-09-05
解:
我发现有问题的LOC:
link_to_unless_current( logo_image, { :controller => 'welcome', :action => 'welcome' } )
我把它改为:
link_to_unless_current( logo_image, { :controller => '/welcome', :action => 'welcome' } )
无济于事。
出于好奇,我把它改为:
link_to( logo_image, { :controller => '/welcome', :action => 'welcome' } )
和工作,就像:
link_to( logo_image, { :controller => 'welcome', :action => 'welcome' } )
所以,我想的最后一件事是:
link_to_unless_current( logo_image, root_path )
它的工作,现在一切都很好,与宇宙。
死后:我与Rails文档缺乏经验使我推断,虽然link_to()
会接受root_path作为一个参数,即link_to_unless_current()
不会。 但直到我看着的方法的源代码,我发现(而且应该一直假设) link_to_unless_current()
是建立在之上link_to_unless()
而这又是建立在顶部link_to()
。
非常感谢谁在这个线程和前一个帮助了乡亲。