Ruby on rails 成功登录后重定向到设备控制器
我是RubyonRails新手。我正在使用Desive gem制作一个应用程序。我的要求是成功登录后我要重新重定向到设计控制器 我已将Desive controller创建为“用户” 我又创建了一个用于重定向的控制器Ruby on rails 成功登录后重定向到设备控制器,ruby-on-rails,ruby,redirect,devise,Ruby On Rails,Ruby,Redirect,Devise,我是RubyonRails新手。我正在使用Desive gem制作一个应用程序。我的要求是成功登录后我要重新重定向到设计控制器 我已将Desive controller创建为“用户” 我又创建了一个用于重定向的控制器home\u controller.rb 在home控制器下,我已对其进行了编码 def index if user_signed_in? redirect_to :controller => 'users', :action =>add end end
home\u controller.rb
在home
控制器下,我已对其进行了编码
def index
if user_signed_in?
redirect_to :controller => 'users', :action =>add
end
end
我已经在users\u controller.rb下编写了add
方法
在routes.rb
下,我已经对其进行了编码
devise_for :users, controllers:{sessions: "users/sessions"}
root :to => 'home#index'
match 'users/:action' => 'users#add', :as => :add
但这不是重定向。我该怎么办。任何帮助。谢谢试试这个:-
resources :users do
member do
get "add"
end
end
如果我理解正确,您将希望使用:
这将帮助您为#
定义未定义的方法“添加url”-此错误出现在rake routes
下,并且添加功能不可用此错误即将出现--
未初始化的常量用户用户是Desive controller。。我想在成功登录后重定向到它。我还有一个控制器主页
(这里我正在检查它是否成功登录)。我必须从HomeController
重定向到UsersController
好的,你需要小心你所说的“设计控制器”。如果您阅读了我的回答和提供的文档,您将看到users\u controller
不属于设计结构的一部分。Deave使用自己的控制器。用户
模型是一个设计模型,但是控制器没有任何这样的绑定到设计。如果你仔细阅读我的答案,你会确切地看到你需要什么我在ApplicationController
下尝试过添加它,但得到的错误与我使用rails g创建design controller的错误相同design:controller用户
在ApplicationController下尝试了什么?
#app/controllers/application_controller.rb
class ApplicationController < ActionController::Base
def after_sign_in_path_for(resource)
user_add_path
end
end
#config/routes.rb
resources :users, only: :show do
get :add
end
#app/controllers/users_controller.rb
class UsersController < ApplicationController
def add
//declarations here
end
def show
//declarations here
end
end