Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 无法绕过验证错误';您需要至少提供一个属性';在ActiveRecord中?_Ruby On Rails - Fatal编程技术网

Ruby on rails 无法绕过验证错误';您需要至少提供一个属性';在ActiveRecord中?

Ruby on rails 无法绕过验证错误';您需要至少提供一个属性';在ActiveRecord中?,ruby-on-rails,Ruby On Rails,我一直在学习Michael Hartl教程,但我走了一条捷径尝试“改进”它的示例,并创建了一个很难的bug 基本上,这个应用程序围绕着一个用户模型,再加上一个注册功能,并围绕一个加密密码功能进行大量验证;对于rails新手来说,这不是一件小事 我没有严格遵循Hartl的例子,而是修改了使用脚手架来设置用户的方法。但在他的项目快结束时,我在尝试创建用户时出现了以下错误: ArgumentError in UsersController#new You need to supply at leas

我一直在学习Michael Hartl教程,但我走了一条捷径尝试“改进”它的示例,并创建了一个很难的bug

基本上,这个应用程序围绕着一个用户模型,再加上一个注册功能,并围绕一个加密密码功能进行大量验证;对于rails新手来说,这不是一件小事

我没有严格遵循Hartl的例子,而是修改了使用脚手架来设置用户的方法。但在他的项目快结束时,我在尝试创建用户时出现了以下错误:

ArgumentError in UsersController#new

You need to supply at least one attribute.
这让我感到困惑,因为我试图关闭除保存之外的所有验证。 下面是一些代码片段:

my users_controller.rb#新建:


我能够通过注释掉模型中的所有验证来消除错误消息,但我将一个接一个地添加它们;所以我仍然需要解决这个bug….

您的
用户
模型中的这一行:

validates :allow_nil => true, :presence => true, :on => :save

未提供用于验证的属性。您可能希望在下面列出的每个验证中都包含这些选项,但这不是
验证
的工作方式。

您的
用户
模型中的这一行:

validates :allow_nil => true, :presence => true, :on => :save

未提供用于验证的属性。您可能希望在下面列出的每个验证中都包含这些选项,但这不是
验证的工作方式。

我同意jimworm。验证不会在新服务器上运行。它仅在您尝试保存或调用valid?之前运行?。只需删除线条JimForm轮廓即可

我同意吉姆沃姆的观点。验证不会在新服务器上运行。它仅在您尝试保存或调用valid?之前运行?。只需删除线条JimForm轮廓即可

请发布用户的创建方法请发布用户的创建方法
def create

    @user = User.new(params[:user])

    respond_to do |format|
      if @user.save
        format.html { redirect_to(@user, :notice => 'User was successfully created.') }
        format.xml  { render :xml => @user, :status => :created, :location => @user }
      else
        format.html { render :action => "new" }
        format.xml  { render :xml => @user.errors, :status => :unprocessable_entity }
      end
    end
  end
validates :allow_nil => true, :presence => true, :on => :save