Entonces, tengo un modelo Photo
que se puede descargar en full_size
y presentation_size
. Cuando un usuario descarga una foto, hago un seguimiento de esto en el atributo full_downloads
y presentation_downloads
de la foto.Rieles: orden por suma de dos columnas
Eso es todo bien.
A veces quiero saber cuántas descargas totales ha habido. Tengo un método simple, total_downloads
que se ve así:
def total_downloads
self.full_downloads + self.presentation_downloads
end
Mi pregunta es: Me gustaría ser capaz de ordenar las fotos por los tres de estos (completa, presentación, descargas totales). Los dos primeros son fáciles, pero ¿cómo se hace un pedido por la suma de dos columnas? Tenga en cuenta que esto debe ser compatible tanto con SQLite como con PG al mínimo.
Una pregunta complementaria, ¿sería más rápido hacer una consulta al método total_downloads
y, de ser así, cuál es la mejor manera de escribir eso? Sé que para resumir en la clase puede llamar al Photo.sum(...)
, pero no estoy seguro de cómo hacer eso para dos columnas en un solo registro.
Gracias!
¿Estaría bien con escribir el SQL directamente o sería un problema? –
@Devin M - Haré lo que tengo que hacer :) – Andrew