Ich habe einige JSON-Daten, die eine Datum Uhrzeit Zeichenfolge und insgesamt speichert. z.B.Gruppe JSON als neue Objekte basierend auf Daten
[{
"Date": "2012-04-01 12:00:00",
"Total": "14"
}, {
"Date": "2012-04-02 06:00:00",
"Total": "3"
}, {
"Date": "2012-04-02 14:00:00",
"Total": "12"
}, {
"Date": "2012-04-02 16:00:00",
"Total": "5"
}, {
"Date": "2012-04-02 17:00:00",
"Total": "7"
}, {
"Date": "2012-04-03 06:00:00",
"Total": "9"
}, {
"Date": "2012-04-03 14:00:00",
"Total": "2"
}, {
"Date": "2012-04-04 06:00:00",
"Total": "1"
}, {
"Date": "2012-04-04 14:00:00",
"Total": "10"
}, {
"Date": "2012-04-04 19:00:00",
"Total": "8"
}, {
"Date": "2012-04-04 21:00:00",
"Total": "4"
}]
Was ich tun möchte, ist neue JSON-Objekte für Daten, die das gleiche Jahr, Monat und Tag ist.
zum Beispiel also eine ganze Reihe von Daten formatiert in sein könnte:
TAG:
[{
"Date": "2012-04-01"
"Total": "3"
},{
"Date": "2012-04-02"
"Total": "4"
},{
"Date": "2012-04-03"
"Total": "6"
}]
MONAT:
[{
"Date": "2012-04"
"Total": "36"
},{
"Date": "2012-05"
"Total": "11"
},{
"Date": "2012-06"
"Total": "23"
},{
"Date": "2012-07"
"Total": "17"
}]
JAHR:
[{
"Date": "2012"
"Total": "91"
},{
"Date": "2013"
"Total": "102"
},{
"Date": "2014"
"Total": "78"
}]
Wie konnte Ich tue das ist Rails? Wenn ich ein Beispiel dafür bekommen könnte, wie ich einen von ihnen machen könnte, dann könnte ich das als Grundlage für die anderen nutzen!
So in der Steuerung habe ich:
def get_count_day
render json: data.to_json
end
def get_count_month
render json: data.to_json
end
def get_count_year
render json: data.to_json
end
Ich erhalte eine Fehlermeldung 'nicht definierte Methode group_by ' – Cameron
'Json' hier ist das Array der Hashes, die Sie in der Frage –
in Ihrem Fall geschrieben haben, ich denke, es wird' data.group_by .... 'wenn' data' ist '{ " Date ":" 2012- 04-01 12:00:00 ", " Gesamt ":" 14 " }, { " Datum ":" 2012-04-02 06:00:00 ", " Gesamt ":" 3 " } .....] ' –