0

子が構築されているが保存されておらず、親への参照とともにビューで使用されている状況があります。これにより、Rails のレコード キャッシングが広範に使用されます。保存されていない子レコードを親に「熱心にロード」したいと思います。

class Parent < ActiveRecord::Base
  has_many :children
  def make_children
    loop..
      children_array << children.build(...)
    end
  end
end

次に、ビューで(「子」はDBに保存されないことに注意してください):

children_array.each do |child|
  # What's the best way to optimise this so it doesn't
  # keep selecting parent albeit from the cache?
  child.parent 
end
4

1 に答える 1

0

問題を理解しているかどうかわかりません。クエリ キャッシュはあなたの味方です...! あなたは.parentデータベースにアクセスしていません。

何をしようとしているのかについてより多くの情報を含めることができれば、問題を解決しやすくなります。

于 2009-12-08T20:07:49.523 に答える