0

我正在使用 Michael Hartl 的 Learn Rails 3 by Example 视频教程,处于早期阶段,但我遇到了一个小问题,我想知道这是否与我使用 rails 4 而教程使用 rails 3 有关。

在 demo_app 中,我有一个名为“micropost”的模型,如下所示:

class Micropost < ActiveRecord::Base
  belongs_to :user
  validates :content, :key => { :maximum => 140 }
end

为了将条目的最大长度保持为 140。这正是视频教程显示的输入内容,除非我是盲人。

但是现在当我尝试打开 localhost:3000/microposts 时,它会抛出这个错误:

ArgumentError in MicropostsController#index
Unknown validator: 'KeyValidator'

与 rails 控制台相同,如果我尝试输入 user.microposts 会给我同样的错误。

这是在rails 4中改变的东西吗?我该怎么做?

4

2 回答 2

1

由于您尝试设置最大长度,因此您应该使用length

validates :content, length: { maximum: 140 }
于 2013-09-29T15:05:56.077 回答
0

是的,Dex 是对的:

为了更好地理解,请到这里

validates :first_name, :length => { :maximum => 30 }
于 2013-09-29T18:47:41.427 回答