我有一個項目,需要使用agregrate函數來排序並從我的活動記錄模型中返回相關記錄。問題是,儘管看到它在許多軌道教程中使用,儘管它的網上ActiveRecord的文檔之中,我的Rails應用程序在我拋出這個錯誤時,該方法被稱爲:'未知的鍵:有'在Ruby on Rails的ActiveRecord查找方法
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]
)
您能發表實際的代碼嗎?像我這樣的事情,通常會發生錯別字或其他一些簡單的事情,讓你拍額頭。當然,現在我已經說過了,有人會用一個技術性很強的答案來回答,這個答案引用了幾張不同的燈塔門票和一個解決方法。然後我會打我的額頭。用完整代碼編輯的 – Baldu 2009-12-02 00:04:16
。 – Ash 2009-12-02 00:21:43
您使用的是哪個版本的Rails? 2.3中增加了:有選項。 – Baldu 2009-12-02 00:41:45