Ich glaube, Sie sind nur ein wenig verwirrt von der Konsolenausgabe.
Du sagst das:
Summary.select("date(created_at) as date, sum(implemented_features)")...
also die zurückgegebene Summary
Instanzen (verpackt in einer ActiveRecord::Relation
) haben keine der üblichen Summary
Attribute:keine id
, kein created_at
, kein implemented_featured
usw. Wenn Sie inspect
aufrufen Bei einem ActiveRecord-Objekt möchte es Ihnen zeigen, was sich im Objekt befindet, und das bedeutet, dass es Ihnen die enthaltenen Datenbankattribute anzeigen möchte. Ihre Summary
Instanzen haben keine der üblichen Attribute, daher sehen Sie Dinge wie <Summary id: nil>
.
Keine Angst, die von Ihnen ausgewählten Werte sind wirklich vorhanden. Wenn Sie sagen:
Summary.select(...).map(&:date)
Sie sollten das date(created_at) as date
sehen Werte. Wenn Sie einen Alias für sum(implemented_features)
hinzufügen dann können Sie die Summen extrahieren, indem Sie diesen Alias als Methodennamen verwenden.