Rails 3设计用户注册编辑路径不起作用

我有一个非常直接的应用程序与Devise的几个调整。

首先,我创建了一个Registers控制器, class RegistrationsController < Devise::RegistrationsControllerinheritance自Devise。 我创建了这个控制器,以便我可以编辑用户而无需重新提供密码。 https://gist.github.com/1514687

我也在我的路线中这样做了:

 devise_for :users, :controllers => { :registrations => "registrations" }` 

注册工作正常,但是当我调用以下内容时:

 

它吐出的URL是(在localhost上运行): http://localhost:3000/users/edit.2

这里有什么想法?

我建议使用非设计控制器,并将其命名为“用户”,以免与设计路线重叠

一些关键的命名法:

 rails g controller accounts resources :accounts def edit @user = User.find(params[:id] end 

(其他控制器操作类似,只需参考@user,不要担心这恰好称为帐户控制器)

在你的routes.rb文件中确保你有

 resources :users 

在您的devise_for行之后如下:

 devise_for :users, :controllers => { :registrations => "registrations" } resources :users