Rspec + Rails:未为模块加载table_name_prefix

时间:2013-08-12 23:34:35

标签: ruby-on-rails rspec

当我在特定文件上运行rspec时:

rspec spec/models/my_namespace/my_model_spec.rb

我遇到错误,因为rspec似乎没有加载app / models / my_namespace.rb,其中包含self.table_name_prefix的声明。事实上,如果我使用pry并运行MyNamepsace.table_name_prefix # => NoMethodError: undefined method ``table_name_prefix'

当我尝试从Rails控制台(没有rspec)查询数据库时,它可以正常工作:MyNamespace::MyModel.where(foo:'bar') # => [...]

知道问题或修复是什么吗?

Rails 3.2.14,Ruby 1.9.3,Debian

1 个答案:

答案 0 :(得分:1)

在spec文件的顶部:

require_relative '../../../app/models/my_namespace'

这将加载指定表前缀的命名空间文件。