Beego更新并通过ID获得1

时间:2019-03-18 09:22:20

标签: api go model controller beego

我绝对呆在Beego上,随时更新和获取。我已经完成了getall,删除,

问题是我的ID是主键。我将模型转换为相等的字符串。如何通过使用ID从票证表中搜索,以及如何在模型中以[]数组形式获取并返回它。

控制器

func (i *TicketController) GetTicket() {
    ID := i.GetInt("ID")
    stringID := strconv.Itoa(ID)
    if ID != "" {
        ticket := models.GetTicketById(stringID)
        fmt.Println(ticket)
        i.Data["json"] = ticket
    }
    i.ServeJSON()
}

模型

func GetTicketById(id int64) Ticket {
    t := Ticket{ID: id}
    o := orm.NewOrm()
    err := o.Read(&t)
    if err == orm.ErrNoRows {
        fmt.Println("no result")
    } else if err == orm.ErrMissPK {
        fmt.Println("can't find PK")
    }
    return t
}

1 个答案:

答案 0 :(得分:1)

我认为您误会了很多事情。我将您的代码固定在此链接上。

  1. 分配为ID,错误:= i.GetInt64(“ ID”)
  2. 检查错误,好像err == nil && ID> 0 {}

https://play.golang.org/p/PY-lc3AfhPw