「不明なキー(S):」を有する方法を探すRailsのActiveRecordの上のRubyで

StackOverflow https://stackoverflow.com/questions/1829733

質問

私は私のアクティブレコードモデルの一つから関連レコードをソートして返すためにagregrate機能を使用する必要があるプロジェクトを持っています。問題は、それが、多くのレールのチュートリアルで使用される見にもかかわらず、である、そしてメソッドが呼び出されたとき、それはオンラインのActiveRecordのドキュメントであるにもかかわらず、私のRailsアプリは私に、このエラーがスローされます:

Unknown key(s): having

任意のアイデアなぜですか?

私はこのようにそれを使用しています(私は:group =>を持っている前に、働くことのないよう:持つコードは、単なるフィルターいない、正しく実行 - 私は必要がある。):

Question.find(
  :all,
  :select => "questions.id, questions.text, questions.question_type_id, questions.meta, questions.max_answer_length, CAST(COUNT(form_questions.id) AS REAL) / CAST((SELECT COUNT(*) FROM application_forms) AS REAL) AS expr1",
  :joins => "INNER JOIN form_questions ON questions.id = form_questions.question_id",
  :order => "expr1 DESC",
  :group => "questions.id, questions.text, questions.question_type_id, questions.meta, questions.max_answer_length",
  :having => ["expr1 >= ?", 0.75]
)
役に立ちましたか?

解決

あなたはRoRののバージョンが最新であることを確認していますか? ActiveRecordのはのためのサポートを提供しています。今、(私は思う)2年間の持つ、おそらくあなただけの古いバージョンを使っていますか?

あなたはレールの環境を更新することができない場合は、

あなたはまだの最後にそれを追加することにより、HAVING句を使用することができます。group文

ベスト望みました、 ファビアン

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top