我不知道为什么,但我遇到了一个简单的问题。我有一个简单的用户模型,我已经对其中一个字段进行了简单的验证,即存在的用户名及其长度。
以下是代码:
user.rb
class User < ActiveRecord::Base
validates :username, presence: true, length: { minumum: 3, maximum: 25 }
end
因此,
user = User.new(username: 'hi')
user.save
必须以用户名的长度失败(即根据给定的验证而言太短)。但在我的情况下,它保存没有任何错误。目前,只有当用户名为空时才会出错,但不会给出最小长度的错误。注意:我已经重装了!我的rails控制台
答案 0 :(得分:5)
你拼写错误最少:)试试这个:
class User < ActiveRecord::Base
validates :username, presence: true, length: { minimum: 3, maximum: 25 }
end
另外,重新:下面的答案,这直接来自RailsGuides for Active Record Validations:
class Essay < ActiveRecord::Base
validates :content, length: {
minimum: 300,
maximum: 400,
tokenizer: lambda { |str| str.split(/\s+/) },
too_short: "must have at least %{count} words",
too_long: "must have at most %{count} words"
}
end