'Clave (s) Desconocido: tener' en Ruby on Rails ActiveRecord encontrar el método
-
11-09-2019 - |
Pregunta
Tengo un proyecto que necesita utilizar una función agregrate para ordenar y devolver registros pertinentes de uno de mis modelos de registro activos. El problema es que, a pesar de ver que utiliza en numerosos tutoriales carriles, ya pesar de estar en la documentación en línea ActiveRecord, mi aplicación Rails lanza este error de mí cuando se llama al método:
Unknown key(s): having
Cualquier idea por qué?
lo estoy usando como esto (tengo un :group =>
ante el mismo que funciona, ya que sin el: tener el código se ejecuta correctamente, es simplemente no filtrada - lo que necesito.):
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]
)
Solución
¿Está seguro de que su versión de RoR es hasta la fecha? ActiveRecord proporciona soporte para: teniendo por (creo) 2 años ahora, pero probablemente sólo estás usando una versión obsoleta?
Si no puede actualizar su entorno carriles aún puede utilizar la cláusula HAVING añadiéndolo al final de su:. Declaración del grupo
Mejor deseado, Fabian