这里有一段非常简单的代码,根据文档应该可以工作。
package controllers
import (
"github.com/astaxie/beego"
"github.com/astaxie/beego/orm"
"fmt"
)
type TestController struct {
beego.Controller
}
type Ticket struct {
Id int `orm:"auto"`
EventId int
EntryId int
}
func (this *TestController) Get() {
o := orm.NewOrm()
tickets := new([]*Ticket)
qs, _ := o.QueryTable(new(Ticket)).Filter("EventId", 2).All(&tickets)
fmt.Print(qs)
this.Ctx.WriteString("test controller")
}
func init(){
orm.RegisterModel(new(Ticket))
}这会导致Beego崩溃,并显示以下错误:
GoEventKeeper:wrong object type `*[]*controllers.Ticket` for rows scan, need *[]*rohan.com/GoEventKeeper/controllers.Ticket or *rohan.com/GoEventKeeper/controllers.Ticket我觉得这不应该发生,显然我在控制器中只有一个票证结构,所以它似乎在相互比较错误的值?
我需要做些什么才能解决这个问题?
发布于 2014-05-20 11:22:09
qs, _ := o.QueryTable(new(Ticket)).Filter("EventId", 2).All(&tickets)更改为
qs, _ := o.QueryTable(new(Ticket)).Filter("EventId", 2).All(tickets)因为票证已经很重要了
更多详情请参阅http://beego.me/docs/mvc/model/query.md#all
https://stackoverflow.com/questions/19054180
复制相似问题