2016-04-04 5 views
4

Also sage ich habe eine channel, und es has many entries. Täglich kann dieser Kanal Einträge für viele Benutzer haben. Ich möchte in der Lage sein zu berichten, wie viele Einträge es während der Woche gab, aber ich möchte nur zeigen, wie viele Tage ein Eintrag erstellt wurde. Ich möchte also nicht zeigen, wie viele Einträge in dieser Woche erstellt wurden, wie viele Tage ein Eintrag passiert ist.Ruby auf Schienen, wie die Anzahl der Tage Objekte für diesen Zeitraum erstellt wurden

Beispiel:

channel.entries.for_week(current) kehrt alle Einträge, die in dieser Woche gemacht wurden.

Ich möchte nur die Anzahl der Tage zurückgeben, die Einträge für diesen Kanal gemacht wurden. Hat jemand eine gute Lösung dafür?

+0

Was genau möchten Sie? Wenn ein Kanal 2 Einträge hat, einen für 3 Tage, einen weiteren für 4 Tage, ist das gewünschte Ergebnis? 7? –

Antwort

3

Ich denke, dass Sie so etwas verwenden können.

channel.entries.for_week(current).pluck(:created_at).map(&:to_date).uniq.count 
+0

Ihre Instanz gibt nicht alle Einträge zurück – Ilya

+0

@Ilya was meinen Sie mit allen Einträgen? –

+0

'ActiveRecord :: Relation' Objekt – Ilya

Verwandte Themen