rake任務(這實際上是關於耙&一個新手的問題Rails的&依賴一般。試圖環繞這一切是如何結合在一起的我的頭)如何設置播種
基本上,我想瑞克類似seed.rb的任務,但單獨調用。它爲開發環境添加了測試數據,而我的seed.rb爲所有環境提供了基本數據。
腳本family_seed.rb使用FactoryGirl生成一些記錄。它看起來像這樣:
require File.expand_path('../../config/environment', __FILE__)
require './spec/factories'
Family.delete_all
Member.delete_all
zinsser = Factory.create(:family, :last_name=>'Zinsser', :first_name=>'Carl', :sim_id => '500')
blackburn = Factory.create(:family, :last_name=>'Blackburn', :first_name=>'Greg', :sim_id => '501')
它運行罰款bundle exec "ruby db/family_seeds.rb"
,但我的問題是,如何用Rake設置。整個事情應該放在Rake任務中嗎?我怎樣才能設置一個調用腳本的任務,同時確保Rails開發環境在運行時可用?我不僅要完成工作,還要以「正確」的方式完成工作。解決這個
這是一個很好的警告!有什麼方法可以確保任務只在給定環境中運行? FamilySeed類等對象是否可以檢查環境以查看它是測試還是生產? – 2010-12-15 10:59:33
如果rails env是production,我已經更新了代碼以引發異常。 – idlefingers 2010-12-15 11:04:02