2017-06-13 8 views
0

私は非常に多くのレコードのヒープ(異なるモデルからのもの)を作成するプログラムを持っています。DB内のすべてのレコードのRails数?

メインレコードを削除し、関連付けられている他のすべてのレコードも削除されていることを確認します。

テーブルに関係なく、DB内のすべてのレコードを単純にカウントする方法はありますか?それから、すべてを作成し、メインの削除をトリガーし、DBに残っているものがないかどうかを確認します。

答えて

2
Rails.application.eager_load! 
ActiveRecord::Base.subclasses.sum(&:count) 
+1

アクティブな書き込みが多い大規模なデータベースには注意が必要です。これには時間がかかります。 – tadman

+0

2番目の行だけが返されました: '[ApplicationRecord(Abstract)、ActiveRecord :: SchemaMigration(version:string)] ' – Mirror318

+0

@ Mirror318' ActiveRecord :: Base'の間にデフォルト以外のサブクラスがあるようですあなたのモデル、例えば'class MyBase Mori

関連する問題