Rspec应该has_many引发错误的参数数量(0表示1)

时间:2013-02-12 19:24:25

标签: ruby-on-rails rspec has-many

当我在我的Rails应用程序上运行rspec测试文件时,除has_many个关联的测试外,一切都通过了:

it { should have_many(:notes) } # ERROR
it { should belong_to(:agent_field_set) } # OK
it { should have_and_belong_to_many(:profiles) } # OK

should have_many(:notes)行引发ArgumentError: wrong number of arguments (0 for 1)。我已经检查了我的数据库和我的模型文件,以验证has_many关联是否存在,两者都显示正常:

has_many :notes, class_name: "NoteNs::Note", foreign_key: :user_id

谁能告诉我在哪里寻找问题?

规范:Ruby 1.9.3,Rails 3.2.11

1 个答案:

答案 0 :(得分:0)

最后,修复问题的方法是重命名我的一个命名范围。我的命名范围称为parent,我的模型具有belongs_to :parent关联。

我无法猜测为什么在一个命名范围,在类上,以及一个关联,在一个实例上发生冲突。对任何可以向我解释这一点的人+1。