Как получить данные из базы данных в Go&Beego?

Я пытаюсь создать простой сервис REST на Go&Beego.

Не могу понять логику Биго.

Во всех примерах есть информация о том, как получить только один элемент, в то время как мне нужно получить все элементы.

В случае API.

Контроллер:

package controllers
import (
    "api/models"
    "github.com/astaxie/beego"
)

type UserController struct {
    beego.Controller
}

func (u *UserController) GetAll() {
    users := models.GetAllUsers()
    u.Data["json"] = users
    u.ServeJSON()
}

Модель:

package models

import (
    "github.com/astaxie/beego/orm"
)

var (
    UserList map[int]*User
)

func init() {
    orm.RegisterModel(new(User))

    UserList = make(map[int]*User)

    u := User{1, "Chandler", "Bing", "[email protected]"}
    UserList[1] = &u
}

type User struct {
    Id int `form:"id"`
    First_name string `form:"first_name"`
    Last_name string `form:"last_name"`
    Email string `form:"email"`
}

func GetAllUsers() map[int]*User {
    return UserList
}

Это работает! Но как я могу получить данные из базы данных?

Соединения с базой данных в порядке (MySQL)


person Igor Bezlepkin    schedule 11.09.2017    source источник
comment
Выполнить sql-запрос, обработать результаты, вернуть их?   -  person u_mulder    schedule 11.09.2017


Ответы (1)