我正在为某些软件编写规范并得到一个奇怪的行为:在我正在测试的方法中,我正在调用:
MyModel.where(special_identifier: opts[:ident]).first || MyModelBuilder.new(m).build
(注意我不想要 first_or_create 或 first_or_new 因为我在这里使用显式构建器)。当我查询时,MyModel.where(...)
我应该取回一个ActiveRecord::Relation
对象,这就是它在 prod、dev、console 等中的行为方式。但是,在运行规范时,会where
返回一个MyModel
对象。这是一个错误,我错过了什么吗?