現時点では、最善の(ただし理想的ではない)解決策は、「activerecord-import」 。残念ながら、そのgemは挿入されたIDを返さないため、IDを取得するには、向きを変えてクエリを実行する必要があります。つまり、イベントモデルを一括挿入し、データベースにクエリを実行して、すべてをメモリに戻します。これでイベントIDができたので、クーポンを作成して一括挿入できます。 CouponEventsの泡を繰り返し洗い流します。
イベントごとの1回のラウンドトリップと比較して、CouponとCouponEvent-おそらく数千行のファイルの場合は数千回のラウンドトリップ-モデルごとに2回のラウンドトリップしか実行していません-1つはイベントを挿入し、もう1つはIDを使用してイベントをフェッチします、同上クーポンとクーポンイベント-合計6往復。