2012-07-31 34 views
0

我想从我的Rails应用程序中删除注册页面,因为我与只邀请系统打算和我已阅读,我必须从删除:registrable模块为了让我的注册消失页我的用户模型...Ruby on Rails的设计:登记删除回传失误

当我做,我得到以下错误:

NoMethodError in Devise::RegistrationsController#new 

undefined method `new_with_session' for #<Class:0x007ffb53b8f820> 

这里是user.r的色器件线b

devise :database_authenticatable, :recoverable, :rememberable, :trackable, :validatable 

回答

1

我想你也必须重写注册控制器。从模型登记:

class RegistrationsController < Devise::RegistrationsController 
    def new 
    flash[:info] = 'Registrations are not open yet, but please check back soon' 
    redirect_to root_path 
    end 

    def create 
    flash[:info] = 'Registrations are not open yet, but please check back soon' 
    redirect_to root_path 
    end 
end 

我从disabling Devise registration for production environment only

+0

仍然看不到任何生产或开发服务器的差异...所有的工作是一样的 – fxuser 2012-08-01 07:35:00

+0

我不得不在控制器文件夹中创建一个设备文件夹,以便它能够工作谢谢 – fxuser 2012-08-01 08:21:39

1

您只需删除了它。所描述的错误将会发生,直到你重新启动应用程序为止

0

嗯,我知道这已经有一段时间了,但它并没有阻止任何人遇到同样的问题,因为我刚刚经历了几分钟前。

最好的解决办法从模型中取出后:registrable仅仅是重启您的应用程序,例如

devise :database_authenticatable, :recoverable, :rememberable, :trackable, :validatable, :registrable

成为

devise :database_authenticatable, :recoverable, :rememberable, :trackable, :validatable

但是,如果您仍然有点想带人参加为什么注册不可用,我会建议任何人去接受接受的答案。

谢谢。