gpt4 book ai didi

ruby-on-rails - FactoryGirl搞砸了 rake db:迁移过程

转载 作者:行者123 更新时间:2023-12-03 09:00:04 25 4
gpt4 key购买 nike

我正在使用Rspec(2.11.0)和FactoryGirl(4.0.0)在Ruby on Rails 3中进行TDD / BDD。我有一个类别模型的工厂:

FactoryGirl.define "Category" do
factory :category do
name "Foo"
end
end

如果删除,请在 测试环境中创建然后迁移数据库,我会收到此错误:
rake aborted!
Could not find table 'categories'

发生此问题的原因是FactoryGirl期望表已经存在(出于某种奇怪的原因)。如果我从rails应用程序中删除spec文件夹并执行 db:migrate,那么它将起作用。另外,如果我将 factory-girl-rails中的 Gemfile标记为 :require => false,它也可以工作(然后我必须注释该要求才能运行rspec)。

我在这里找到了有关此问题的一些信息: https://github.com/thoughtbot/factory_girl/issues/88

我在做错什么吗?如何在 db:migration任务中“跳过” FactoryGirl阶段?

最佳答案

我认为您需要在Gemfile中具有像这样的工厂女孩​​定义:

  gem 'factory_girl_rails', :require => false

然后,您只需要在spec_helper.rb中像这样:
  require 'factory_girl_rails'

这就是我一直使用此gem的方式。您不需要在spec_helper.rb之外的其他地方要求它。您当前所需的方法是错误的。

关于ruby-on-rails - FactoryGirl搞砸了 rake db:迁移过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12423273/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com