1

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

rspec spec/models/my_namespace/my_model_spec.rb

我遇到了一个错误,因为 rspec 似乎没有加载 app/models/my_namespace.rb,其中包含self.table_name_prefix. 事实上,如果我使用 pry and run 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

4

1 回答 1

1

在规范文件的顶部:

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

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

于 2017-02-02T18:35:00.680 回答