Link_to重定向错误

时间:2014-07-07 22:13:22

标签: html ruby-on-rails-4

我对link_to有一个奇怪的问题,这就是发生的事情: 当我点击此link_to:

<li><%= link_to "Sign up", sign_up_path %></li>

它重定向到sessions / new,但我想转到users / new 我认为我的routes.rb错了,但我没有看错 这是我的route.rb:

get "sessions/new"
get "sign_up" => "users#new", :as => "sign_up" 
get "log_in" => "sessions#new", :as => "log_in"  
get "log_out" => "sessions#destroy", :as => "log_out"
root :to => "sessions#new"  
resources :users  

resources :sessions

resources :orchestras

resources :conductors

resources :instruments

resources :integrants

如果有人可以提供帮助,谢谢。

更新

@ChrisPeters告诉我,看看是否有一个before_action将我重定向到我的会话/新会议 我验证并找到了一个before_filter:

before_filter :verifyUser, :only => [:orchestras, :conductors, :instruments, :integrants, :users]

因为我正在重定向到错误的页面,所以我更改了我的users_controller以跳过此内容:

  skip_before_action :verifyUser, only: [:new]

现在它正在运作。 谢谢@ChrisPeters。

1 个答案:

答案 0 :(得分:0)

查看是否有before_action拦截请求并将用户重定向到sessions#new

正如您在更新中所述,看起来您错过了一个:

before_filter :verifyUser, :only => [:orchestras, :conductors, :instruments, :integrants, :users]

您可以通过致电skip_before_action来解决问题:

skip_before_action :verifyUser, only: [:new]

一个小指针是将您的过滤方法重命名为verify_user,因为snake_case是用于命名方法的传统Ruby方法。