2016-03-10 4 views
0

Я пытаюсь использовать link_to для запуска настраиваемого метода контроллера. Пользовательский метод используется для запуска почтовой программы.link_to метод пользовательского контроллера с параметрами

Мои link_to в представлении:

<%= link_to 'Resend sign up instructions', send_sign_up_instructions_path(team: @team.name, email: email), class: "button tiny radius" %> 

Мой маршрут:

resources :teams 

get 'teams/send_sign_up_instructions', to: 'teams#send_sign_up_instructions', as: :send_sign_up_instructions 

Пользовательский метод в TeamsController:

def send_sign_up_instructions 
    team_name = params[:team] 
    email = params[:email] 
    TeamMailer.notify_signup(team_name, email) 
end 

Выход ошибки:

{"email"=>"[email protected]", "team"=>"Some js team", "action"=>"show", "controller"=>"teams", "id"=>"send_sign_up_instructions"} 

Не хватает ли я чего-то скрытого очевидного?

+0

Вы можете разместить полный стек ошибок трассировки @Thomas Taylor –

ответ

1

Похоже, что существует маршрут, указывающий на teams/:id, определенный в resources :teams, поэтому вы не можете использовать teams/something как еще один маршрут. Просто измените его на какой-то URL-то, а не 'команд/...

Это будет работать в качестве примера:

get 'team/send_sign_up_instructions', to: 'teams#send_sign_up_instructions', as: :send_sign_up_instructions 
+0

я вижу! Спасибо, что вы работали. –

 Смежные вопросы

  • Нет связанных вопросов^_^