2012-03-10 75 views
2

設計wiki有指示https://github.com/plataformatec/devise/wiki/How-To:-Display-a-custom-sign_in-form-anywhere-in-your-appfor在網站上的任何位置創建一個sign_in表單。我想將sign_up表單放在主頁上。路由設計註冊表格

他們推薦的sign_in形式是這樣開始的

<%= form_for("user", :url => user_session_path) do |f| %> 

基於什麼例子,從耙路由此輸出

new_user_registration GET /users/sign_up(.:format) devise/registrations#new

我開始sign_up形式像這樣在我的網站家頁

<%= form_for("user", :url => new_user_registration_path) do |f| %> 

當我激活服務器和嘗試註冊一個用戶,我得到這個錯誤

No route matches [POST] "https://stackoverflow.com/users/sign_up" 

Try running rake routes for more information on available routes. 

有一兩件事我注意到的是,rake routes顯示了new_user_registration GET請求,而我的錯誤消息顯示POST。不知道這是否意義重大。

Routes.rb 



root :to => "home#index" 
devise_for :users 
resources :users 
+0

你能粘貼您的routes.rb文件好嗎? – Jon 2012-03-10 09:57:42

+0

@Jon用routes.rb更新了OP。謝謝 – Leahcim 2012-03-10 17:25:31

回答

1

的問題是,這個

new_user_registration_path

是走錯了路。那轉移到「新」行動

應該已經

user_registration_path

其轉移到「創造」的行動

+0

這是正確的答案。 – Onichan 2016-01-09 12:40:13