Calcular estadísticas del mes

Tengo una tabla de donaciones en la que estoy tratando de calcular el monto total de cada mes. Durante meses sin donaciones, me gustaría que el resultado devolviera 0.

Aquí está mi consulta actual:

Donation.calculate(:sum, :amount, :conditions => { 
  :created_at => (Time.now.prev_year.all_year) }, 
  :order => "EXTRACT(month FROM created_at)", 
  :group => ["EXTRACT(month FROM created_at)"])

que devuelve:

{7=>220392, 8=>334210, 9=>475188, 10=>323661, 11=>307689, 12=>439889}

¿Alguna idea de cómo agarrar los meses vacíos?

Respuestas a la pregunta(2)

Su respuesta a la pregunta