簡體   English   中英

Rails 4 Devise自定義路線

[英]Rails 4 Devise custom routes

我在我的應用中使用'devise','〜> 3.4.1'和rails 4。 當我嘗試創建自定義路由時,出現了越來越嚴重的錯誤。 我還需要在route.rb中添加什么

錯誤:ArgumentError:'devise / sessions'不是受支持的控制器名稱。 這可能導致潛在的路由問題。 看到

的routes.rb

   Rails.application.routes.draw do
    devise_for :users

   devise_scope :user do
    get 'register', to: 'devise/registrations#new', as: :register
    get 'login', to: ' devise/sessions#new', as: :login
 end

在登錄路由時發生了問題。

試用以下代碼:

devise_scope :user do
    get '/login' => 'devise/sessions#new'
    get '/register' => 'devise/registrations#new'
end

您的代碼中有一個錯字,在“ devise / sessions#new”之前有一個空格。

這個,

get 'login', to: ' devise/sessions#new', as: :login

應該

get 'login', to: 'devise/sessions#new', as: :login

你需要這樣做

devise_for :users, path_names: {
  sign_in: 'login', sign_out: 'logout',
  password: 'secret', confirmation: 'verification',
  registration: 'register', edit: 'edit/profile'
}

來源: http : //www.rubydoc.info/github/plataformatec/devise/ActionDispatch/Routing/Mapper : devise_for

 devise_for  :user, :path => ' ', :path_names => { :sign_in => "login" :sign_up => "register" }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM