beego QueryTable表名:`cpes`不存在

时间:2016-08-22 13:18:43

标签: orm beego

我在beego中有这样的代码:

o := orm.NewOrm()
qs := o.QueryTable("cpes")

我现在认为beego与数据库连接良好,数据库有'cpes'表,但我不断收到错误因为beego找不到表。

¿如何进一步调试?

3 个答案:

答案 0 :(得分:2)

您必须定义模型Cpes并注册模型' cpes'。

像:

let headers = new Headers({ 'Authorization': 'Basic ' +  btoa('a@b.com:password') });
let options = new RequestOptions({ headers: headers });

return this.http.get(Config.Api.GetNavbar, options).map((res: Response) => res.json());

答案 1 :(得分:1)

我遇到了同样的问题。就我而言,这是因为我没有注册模型。

orm.RegisterModel(new(Member), new(Bank), new(Queue), new(Payment))

确保您使用beego注册了所有型号。 错误消息应该更明确,但

答案 2 :(得分:0)

几个星期前我遇到了同样的问题。答案是Beego如何在ORM中翻译表名。

快速解决方法是使用

qs := o.QueryTable(new(cpes))

cpes是模型结构。

如果您希望看到此操作或此解决方案不起作用,请尝试在您的数据库上使用bee generate api命令。这将以预制的方式为您提供模型,以及一些关于如何使用它们的代码示例。

祝你好运!