2011-06-24 26 views
1

我有我的Gemfile以下一個Rails 3的項目...是否有像db:fixtures:load in factory_girl_rails這樣的內置rake任務?

group :development, :test do 
    gem 'factory_girl_rails', '~> 1.1.beta1' 
end 

我也有幾個規範的定義工廠/ factories.rb我的測試中使用它成功。我想用這些工廠不時地填充我的開發數據庫。

有沒有反正我可以得到鐵路的分貝:夾具:加載耙子任務加載spec/factories.rb中定義的工廠而不是測試/夾具中的Yaml夾具?如果沒有,factory_girl_rails或Rails中是否有另外一個rake任務會加載由我的工廠定義生成的數據?

很確定最好的辦法就是寫我自己的耙子任務來完成這個任務,但是首先要在這裏檢查。

+0

的另一種方式可以讓你的'seeds'文件加載這個給你。只要在''Rails.env =='test'前面加上工廠' – apneadiving

+0

@apneadiving如果我將放入'if Rails.env =='development''。另外,我不得不用''&&'if條件來觸發工廠數據加載,因爲我並不總是希望在開發中加載工廠數據。自定義rake任務可能聽起來比基於seeds.rb的解決方案更可行。感謝壽。 –

+0

第二個想法是,我打算使用@ apneadiving的建議,並使用seeds.rb,因爲工廠並不是真的意味着這類事情。希望我可以重複使用我的一些工廠代碼來生成這些數據,但是很好。 –

回答

1

另一種方法可以讓你的seeds.rb文件爲你加載。

只是在前面加上工廠,if Rails.env == "test"

+0

其實,我的if塊讀取... –