2015-09-06 64 views
0

我在全新的Rails應用程序上使用Rails 4.2.1。 我一直當試圖從控制檯創建新的用戶收到此錯誤:引發ArgumentError:您需要提供至少一個驗證Rails 4.2.1:ArgumentError:您需要提供至少一個驗證

我一直在谷歌上搜索兜了幾個小時,但我堅持這一點。

這是我的命令從控制檯的新用戶:

User.create(:first_name => "John", :last_name => "Doe", :username => "John", :email => "[email protected]", :password => "password") 

這是我User型號:

class User < ActiveRecord::Base 
    devise :database_authenticatable, :registerable, 
     :recoverable, :rememberable, :trackable, 
     :validatable, :omniauthable, 
     :omniauth_providers => [:facebook] 

    has_many :answers 
    has_many :comments 
    has_many :polls 
    has_many :settings 
    has_many :stories 
    has_many :story_followers 

    validates :username, presence: true 
    validates :first_name, presence: true 
    validates :last_name, presence: true 
    validates :bio, length: { maximum: 300, too_long: "%{count} characters is the maximum allowed" } 

    has_attached_file :avatar, :styles => { 
          :large => "500x500#", 
          :medium => "250x250#", 
          :thumb => "100x100#" 
          }, :default_url => "avatarmissing.png" 

    validates_attachment_content_type :avatar, :content_type => %w(image/jpeg image/jpg image/png image/gif) 
end 

我在做什麼錯?

+0

您需要將bio屬性添加到create語句中,我期望得到一個不同的錯誤消息。 – margo

+0

你能提供你收到的實際堆棧跟蹤嗎? –

+0

我解決了這個問題。由於錯誤,我忘了在另一個模型中添加「存在:真實」。 –

回答

0

我會首先評論一下你已有的驗證,以幫助縮小問題的範圍。該錯誤消息指向無效驗證(包括回形針驗證)。

此外,您可能需要在您的屬性中指定:password_confirmation。

相關問題