私は非常に強く、いくつかのコレクションを実行してから、find_or_intialize_by
を実行する必要があります。これを1回のトランザクションで実行しています。クエリを実行するのに80秒以上かかる。私は今、find_each
を使ってこれをスピードアップしようとします。Rails Unknownキー::条件。有効なキーは次のとおりです::start、:batch_size
ActiveRecord::Base.transaction do
StudentApplication.find_each(:conditions => "force_review is true") do |app|
....
end
end
私は次のようになっています:
== 20160920133013 MoveForceReviewFieldsToCcSubmission: migrating ==============
rake aborted!
StandardError: An error has occurred, this and all later migrations canceled:
Unknown key: :conditions. Valid keys are: :start, :batch_size/Users/Nexus/Work/prodigy/db/migrate/20160920133013_move_force_review_fields_to_cc_submission.rb:4:in `block in change'
/Users/Nexus/Work/prodigy/db/migrate/20160920133013_move_force_review_fields_to_cc_submission.rb:3:in `change'
/Users/Nexus/.rbenv/versions/2.3.0/bin/bundle:23:in `load'
/Users/Nexus/.rbenv/versions/2.3.0/bin/bundle:23:in `<main>'
ArgumentError: Unknown key: :conditions. Valid keys are: :start, :batch_size
がfind_each
を使用してthis tutorial aroundを見て、私はそれはあなたがクエリに条件を指定することを可能にするハッシュ引数を取る見て、私はの利点を活用したいですfind_each
を実行する前に結果をフィルタリングする必要があります。
Rails 4.1.14.2
とruby 2.3.0p0
を使用していますが、現在このオプションは廃止されていますか?または私は何か間違っているのですか?