我在Ruby on Rails應用程序中使用了兩個數據庫;一個是應用程序的數據庫,而另一個是獨立的數據庫,Rails不受控制。Ruby on Rails和db:fixtures:load - 它可以忽略某些模型嗎?
問題是,當將裝置加載到開發環境時,它試圖從與開發數據庫的連接到獨立數據庫的表上運行DELETE語句,這顯然錯誤了。
我不希望Rails試圖做任何事情,但讀獨立數據庫 - 我特別不希望它試圖刪除表。
有沒有一種簡單的方法來告訴Rails在加載燈具時忽略第二個數據庫的模型?
UPDATE:澄清,Rails的似乎認爲從獨立數據庫中的表是發展連接的一部分,雖然我已經指定使用establish_connection
模型類的正確連接。另外需要注意的是,所有的模型類都可以根據需要按照要求從script/console
進行精確的操作。
我與環保試了一下發布前使用導出設置變量;根據你的建議,我也嘗試過這種方式。同樣的錯誤。 – 2010-01-28 20:29:26
您可以編寫自己的工具來將* .yml中的數據加載到所需的數據庫,這就是我所能提供的信息。 GL – 2010-01-28 20:45:12
'rake db:fixtures:load RAILS_ENV = test'(not testing)for me working for me。 – 2011-09-27 17:16:15