我知道这里已经问过很多次了(我也读过wiki)。但我仍然困惑于如何正确地保持我的路线名称不变。
目前,我的设计路线如下,使用自定义url(例如/user/signup
)。
我的模型叫做User
路线:
devise_for :users, :controllers => { :registrations => "registrations" }, :path_names => {
:sign_up => 'signup'
}
devise_for :users, :path => "user", :except => "create", :path_names => {
:sign_in => 'login',
:sign_out => 'logout',
:password => 'forgot-password',
:confirmation => 'verification',
:unlock => 'unblock',
:sign_up => 'signup'
}
我所要做的只是连接到create操作中,这样我就可以检查我创建的蜜罐字段是否已填写完毕(以防止垃圾邮件)。我只想这么做。
我想保持我的url不变,尽管
/user/signup
。我还有别的事要做吗?这就是我目前为止在…
/应用程序/控制器/注册\控制器.rb
class Users::RegistrationsController < Devise::RegistrationsController
def new
super
end
def create
super
end
end
我得到
uninitialized constant Users
最佳答案
很简单,我需要把控制器放在一个'用户'文件夹,这就解决了一切。(此外,路线控制器需要:registrations => "users/registrations"