ruby-on-rails-3 - 你如何解决 FixtureClassNotFound : No class attached to find

标签 ruby-on-rails-3 fixtures

运行我的测试时,我收到此错误:

FixtureClassNotFound: No class attached to find

是什么导致此错误以及如何解决?

最佳答案

发生这种情况很可能是因为模型使用了自定义表名(使用 set_table_name)或模型在模块中。

要解决,需要加一个set_fixture_class test_helper.rb 中的行在 fixtures :all 之前线:

class ActiveSupport::TestCase

  self.use_transactional_fixtures = true
  .
  .
  .
  set_fixture_class my_table_name: MyModule::MyClass

  fixtures :all

end

在这种情况下, fixture 文件应称为 my_table_name.yml

关于ruby-on-rails-3 - 你如何解决 FixtureClassNotFound : No class attached to find,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7020494/

相关文章:

ruby-on-rails - 如何使用 Rabl 读取 "order by id "JSON

ruby-on-rails - 如何自定义 Mailboxer 电子邮件主题?

mysql - ActiveRecord::StatementInvalid: Mysql::Error: MySQL 服务器已经消失:(使用 Parallel gem)

python - 如何覆盖 pytest fixture,但仍然能够访问它?

ruby-on-rails - ActiveRecord::Fixture::FixtureError: 表 "users"没有名为 "monkey"的列

python - 根据命令行参数运行 pytest 标记

fixtures - 带有 Xcode UI 测试的应用程序状态/测试装置

ruby-on-rails - 在 Rails 3 的邮件拦截器中设置 header

ruby-on-rails-3 - 使用 lvh.me 的 Rails 3 子域测试

box2d - 在 Box2d 中向环添加主体和 fixture