私は自分のモデルの1つに対応するオブジェクトのリストを取るエンドポイントを持っています。私はこのコレクションをモデルのテーブル全体として扱い、Postへの呼び出しごとにそれを素早くドロップアンドポストし直したいと思います。リスト内の各要素に対してModel.delete_all
を実行し、次にModel.create
を行う以外の方法がありますか?重要な場合は、ActiveRecordでMySQLとAttendantアダプタを使用しています。Rails ActiveRecordのコレクションを完全に上書きする
0
A
答えて
1
このような振る舞いのユースケースはわからないので、私はあなたのアルゴリズムの決定について提案するつもりはありません(最初の一見では、および再移植)。とにかく、あなたが計画していると仮定し、あなたが本当にドロップして再投入することを決めた場合は、delete_all
、次にcreate
がこのトリックを行う必要があります。
することはできcreate
同時に複数のオブジェクト(またはあなたが少し速くプロセスを作るために一括インポートのための宝石を見ることができます。[1]あなたが心に留めておく必要があります
一つのことをしていますトランザクション内でコード全体を保つため、再投入が失敗した場合には、あなたはすべてのデータを失うことはありません:
ModelName.transaction do
ModelName.delete_all
ModelName.import [:col1, :col2], new_records
end
関連する問題
- 1. RailsのActiveRecordプラグインを書く
- 2. cancanとinherited_resourcesコレクションを上書きする
- 3. Rails 4はinit後のActiveRecordモデル変数を上書きします
- 4. Rails/ActiveRecord:モデルの関連するコレクションへの変更を保存
- 5. Meteor js mongodb SUMコレクション文書が不完全です
- 6. Railsのハイパーリンクスタイルを上書きする
- 7. Rails - has_oneのプライマリキーを上書きする
- 8. Rails 3 ActiveRecord .skip_callbackスレッドの安全性
- 9. 私は完全に書き直さ
- 10. 上ボーダーカバーボーダーを完全に作成する
- 11. ヘルプRubyでのメタプログラミング:Activerecord Settersを上書きする
- 12. Railsでパラメータを上書きする
- 13. コレクション全体のActiveRecordマップ数、次にSQLへのクエリ
- 14. RailsでmysqlのActiveRecordコレクションからオブジェクトだけを削除するには?
- 15. Rails - イベントは完全に予約済み
- 16. Rails&ActiveRecord:テキストブロックの書式設定を保存する
- 17. divのカバーを完全にページの上部にするには?
- 18. RailsのActiveRecordの:
- 19. 不完全なコレクションからItemsControlを作成する
- 20. Ruby/Rails:再オープンとクラスの上書き
- 21. Railsテストの上書きテスト:: Unit :: TestCase
- 22. rewind()の後に、fprintf()をファイルの最後に書き込むことができますか?(例えば、完全に上書きする)
- 23. Ectoを使ってRails ActiveRecord datetimeフィールドを読み書きする方法は?
- 24. Rails完全認証をゼロから
- 25. Rails .js.erbファイルの完全なアセットURL
- 26. IIS7の別のドメインに書き換えURL、完全一致
- 27. .htaccess help - 完全に書き換えます
- 28. Rails - モデルで完全なURLを取得するには
- 29. リアドフロントエンドで完全にTDD Rails APIを設定する方法
- 30. このActiveRecordクエリをMySQLに書き換える方法は?
同じテーブルで削除された同じデータを再移植? – s1mpl3
新しいデータセット、古いデータセットを上書きします。 –
コレクションレコードを更新するだけです。 –