我正在阅读 RSpec,在第一个示例中,我看到如下内容:
Class Foo # in the model
attr_accessible :name, :phone , etc#....
validates :name, presence: true
validates :phone, presence: true
然后在 RSpec 我看到像
it "is valid with a name" do
foo = Foo.new (name: "blah")
expect(foo).to be_valid
end
所以我想我的困惑是这个 be_valid 在做什么?它怎么知道名字是有效的?be_valid 是否意味着去检查我们是否为我们的模型定义了验证器,去看看是什么?在这种情况下,我们说 name 应该存在,所以现在我们已经传递了 name,这意味着它是有效的?