@nurdus

Почему возвращается пустой список в json?

Добрый вечер.
Подскажите, плиз, люди добрые. Следующий код в браузере возвращает:
{"Articles":[{},{},{}]}
Что не так...
type Article struct {
  id      string `json: "id"`
  title   string `json: "title"`
  pretext string `json: "pretext"`
  text    string `json: "text"`
}
type Articles struct {
  Articles []Article `json: "article"`
}
var conn *sql.DB
func GetArticles() Articles {
  result := Articles{}
  conn := db.CreateConn()
  defer conn.Close()
  sqlStatement := "SELECT id, title, pretext, text FROM content order by id LIMIT 0, 3"
  rows, err := conn.Query(sqlStatement)
  defer rows.Close()
  for rows.Next() {
    article := Article{}
    err := rows.Scan(&article.id, &article.title, &article.pretext, &article.text)
    fmt.Println(article.id) // id выводится
    result.Articles = append(result.Articles, article)
  }
  return result
}

func GetArticles(c echo.Context) error {
  result := models.GetArticles()
  fmt.Println(result); // выводит следующее (не похоже на json): {[{12 Название Статья}, {13 Название Статья}]}
  return c.JSON(http.StatusOK, result)
}
  • Вопрос задан
  • 284 просмотра
Решения вопроса 1
У вас поля в структуре с маленькой буквы, это означает, что они private и не будут экспортироваться в json.
Попробуйте вот так:
type Article struct {
  Id      string `json: "id"`
  Title   string `json: "title"`
  Pretext string `json: "pretext"`
  Text    string `json: "text"`
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы