[英]'Unknown key(s): having' In Ruby on Rails ActiveRecord Find Method
我有一個項目需要使用agregrate函數來從我的一個活動記錄模型中排序和返回相關記錄。 問題是,盡管看到它在眾多的rails教程中使用,並且盡管它在在線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年了,但可能你只是使用過時的版本?
如果無法更新rails環境,則仍可以使用HAVING子句將其添加到:group語句的末尾。
最好的希望,法比安
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.