我想在類上有一個方法將對象和所有關係複製到具有相同結構的另一個數據庫。我怎樣才能做到這一點?將對象複製到Rails中的新數據庫ActiveRecord
回答
你可以看看dbcharmer,這將允許即時切換連接,所以複製一個記錄將是我猜的一塊蛋糕。
[更新]小例子:你不必亂用ActiveRecord::Base.connection
假設你database.yml
看起來是這樣的:
production:
blah:
adapter: mysql
username: blah
host: blah.local
database: blah
foo:
adapter: mysql
username: foo
host: foo.local
database: foo
那麼你應該能夠做到像(聲明:我只有閱讀文檔自己)
original_user = User.on_foo.find(99)
User.on_blah.create(name: original_user.name, ...)
我想你甚至可以做這樣的事情
User.on_blah do
original_user.save
end
我看着dbcharmer,但我不希望它搞亂ActiveRecord :: Base的連接或同一類的其他對象的連接。 –
當我閱讀文檔時,不需要混淆「ActiveRecord :: Base.connection',但可以使用'.on_
我不確定這是要走的路。我需要從對象上的所有關係中複製數據。我遇到了批量分配,驗證和關係方面的問題。 –
- 1. Rails的ActiveRecord定義其他對象內的數據庫對象
- 2. 如何使用ActiveRecord將表複製到Rails中的另一個數據庫?
- 3. 使用LINQ更新數據庫中的行 - 複製對象
- 4. 將數據庫(所有對象)每5秒鐘複製到其他數據庫
- 5. 將數據庫1中的數據複製到數據庫2
- 6. 從舊數據庫複製到Couchdb中的新數據庫
- 7. 將行復制到新數據庫中的同一個表中
- 8. 使用LinqToSql將數據庫數據複製到新數據庫中
- 9. 將新對象添加到ActiveRecord ::關係
- 10. 將數據從舊數據庫複製到新結構的新數據
- 11. 將包含對象的字典複製到對象數組中#
- 12. 數據庫中的Rails對象無效
- 13. 將ActiveRecord :: Relation對象追加到單個ActiveRecord對象中
- 14. Rails 3 ActiveRecord抽象對象
- 15. 複製現有的數據庫到新的數據庫
- 16. 將Rails的ActiveRecord對象保存到臨時表(MySQL)中
- 17. 將複雜對象列表插入到數據庫中
- 18. 將多個數據庫複製到一個數據庫中
- 19. 將PostgreSQL數據庫複製到另一個數據庫中
- 20. 爲什麼Meteor在刷新後複製數據庫對象?
- 21. MySQL將崩潰的數據庫複製到新鮮安裝的數據庫
- 22. 複製數據庫對象到Django的另一人
- 23. 更新複製數據庫
- 24. Rails 4 - 插入重複的ActiveRecord數據
- 25. 如何輕鬆地將XML導入到rails(activerecord)數據庫
- 26. 使用Android將新對象添加到Firebase數據庫中
- 27. 將整個數據集複製到一個新的SQL數據庫中
- 28. 將模型內的複雜對象綁定到數據庫
- 29. Ruby on Rails:將ActiveRecord對象嵌入到JavaScript中
- 30. 將數據庫複製到Android設備中的/數據
嗯,備份然後恢復在新的數據庫? – MrYoshiji
我們需要更多細節。這是一次性任務嗎?然後,吉良司先生的建議奏效。這會定期完成嗎?你是否擔心讓物體保持同步?如果您第二次複製對象及其依賴項,您是否需要覆蓋原始副本? –
我並不擔心同步對象。我只是想在動作發生時將它們推入另一個數據庫。第二次啓動操作會覆蓋第二個數據庫中的對象。這將發生在每個對象的基礎上。 –