Я использую Polymer Google Charts. Я хочу создать JSON для одного вызова Controller.ServeJSON, но два, если это лучший дизайн.Golang to Json, создавая Google Charts
Вот пример того, что будет включать JSON, если бы это был два вызова.
cols = '[{"label": "Mth", "type": "string"}, {"label": "Days", "type": "number"}]' rows = '[ [ "Ян", 31], [ "февраль", 28], [ "Март", 31]] '
И если это был один
данных =' [[ "месяц", "Дни" ], [ "Ян", 31], [ "февраль", 28], [ "Март", 31]]
Это можно найти на https://elements.polymer-project.org/elements/google-chart
Я использовал https://mholt.github.io/json-to-go/ для преобразования JSON в структура.
Предполагая двух вызовов, получил это ..
type Chart struct {
Cols []struct {
Label string `json:"label"`
Type string `json:"type"`
} `json:"cols"`
Rows []struct {
Num0 string `json:"0"`
Num1 int `json:"1"`
Все помощь и советы были бы весьма признательны.
Cheers.
EDIT ..
func (c *ChillController) Get() {
jsonString := "[[\"Month\", \"Days\"], [\"Jan\", 31], [\"Feb\", 28], [\"Mar\", 31]]"
d := [][]Chart{}
json.Unmarshal([]byte(jsonString), &d)
fmt.Printf("%v", &d)
c.Data["json"] = &d
c.ServeJSON()
}
И он вернулся ..
[ [ нуля, нуля ], [ нуля, нуля ] ]
Что я пропустил.
Спасибо. Я не полностью понимаю концепцию. Я попытался реализовать это изменение. См. Править выше. Что мне не хватает. –
Вы пытаетесь развязать фрагмент в структуре диаграммы, небольшой трюк: если вы видите '{}' в json, используйте структуры карт и '[]' для фрагментов. Я тоже отредактировал свой ответ :) –