Разработать after_sign_in_path_for… отправка в ... root_path - query

Мне нужна помощь в решении проблемы маршрутов с разработкой гем аутентификации для перенаправления на пользовательскую страницу после успешного входа в систему, чтобы создать новую запись, введя имя и возраст тестового человека (тестовые данные)

Я использую Rails 3 с версией devise 1.4.9

Мои маршруты такие, как показано ниже

    new_user_session GET    /users/sign_in(.:format)       {:action=>"new", :controller=>"devise/sessions"}
        user_session POST   /users/sign_in(.:format)       {:action=>"create", :controller=>"devise/sessions"}
destroy_user_session DELETE /users/sign_out(.:format)      {:action=>"destroy", :controller=>"devise/sessions"}
       user_password POST   /users/password(.:format)      {:action=>"create", :controller=>"devise/passwords"}
   new_user_password GET    /users/password/new(.:format)  {:action=>"new", :controller=>"devise/passwords"}
  edit_user_password GET    /users/password/edit(.:format) {:action=>"edit", :controller=>"devise/passwords"}
                     PUT    /users/password(.:format)      {:action=>"update", :controller=>"devise/passwords"}
   cancel_user_registration GET    /users/cancel(.:format)        {:action=>"cancel", :controller=>"devise/registrations"}
   user_registration POST   /users(.:format)               {:action=>"create", :controller=>"devise/registrations"}
   new_user_registration GET    /users/sign_up(.:format)       {:action=>"new", :controller=>"devise/registrations"}
   edit_user_registration GET    /users/edit(.:format)          {:action=>"edit", :controller=>"devise/registrations"}
                     PUT    /users(.:format)               {:action=>"update", :controller=>"devise/registrations"}
                     DELETE /users(.:format)               {:action=>"destroy", :controller=>"devise/registrations"}
             testers GET    /testers(.:format)             {:action=>"index", :controller=>"testers"}
                     POST   /testers(.:format)             {:action=>"create", :controller=>"testers"}
          new_tester GET    /testers/new(.:format)         {:action=>"new", :controller=>"testers"}
         edit_tester GET    /testers/:id/edit(.:format)    {:action=>"edit", :controller=>"testers"}
              tester GET    /testers/:id(.:format)         {:action=>"show", :controller=>"testers"}
                     PUT    /testers/:id(.:format)         {:action=>"update", :controller=>"testers"}
                     DELETE /testers/:id(.:format)         {:action=>"destroy", :controller=>"testers"}
                root        /                              {:controller=>"testers", :action=>"index"}

В контроллере приложений я попытался переопределить метод, как показано ниже, но безрезультатно, я все равно попал обратно в индекс тестера

class ApplicationController < ActionController::Base

  protect_from_forgery

  def after_sign_in_path_for(resource) 

      new_tester_path

  end

end

В моем файле routes.rb у меня есть следующие строки

Testing::Application.routes.draw do

  devise_for :users 

  resources :testers

  root :to => 'testers#index'

Хотя большая часть кода была сделана с использованием строительных лесов, я все еще не мог понять, как перенаправить на new_tester_path или route / testers / new после успешного входа по электронной почте и паролю пользователя.

Кто-нибудь, пожалуйста, дайте мне знать, что мне не хватает ... при написании функции переопределения я хотел бы знать точный маршрут, который мне нужно указать.

Во время тестирования я попробовал что-то подобное, но страница Google тоже не открывается ... :(

class ApplicationController < ActionController::Base 

protect_from_forgery 

helper ApplicationHelper

def after_sign_in_path_for(resource) 

"www.google.com" 

end 

def after_sign_up_path_for(resource) 

"www.google.com" 

end 

def after_update_path_for(resource) 

"www.google.com" 

end 
14
задан vahid abdi 1 February 2014 в 05:18
поделиться