Beego必须有一个名为`default`的寄存器DataBase别名

时间:2015-01-12 03:14:56

标签: go beego

在使用Beego的生产服务器中,我得到了

必须有一个名为default

的寄存器DataBase别名

我知道数据库连接凭据在服务器中有效,但每当我做了restful请求时,我都会收到此错误并且Beego服务器崩溃。

为什么会发生这种情况?

以下是main.go init函数中的代码:

orm.RegisterDriver("postgres", orm.DR_Postgres)

orm.RegisterDataBase("default", "postgres",
    fmt.Sprintf("postgres://%s:%s@%s/%s?port=%i",
        pgUser, pgPass, pgHost, pgDb, pgPort))

1 个答案:

答案 0 :(得分:0)

您能提供代码示例吗?

根据您提供的错误消息,您可能没有使用default使用别名orm.RegisterDataBase注册数据库。这是我从documentation获取的一个例子:

// param 1:        Database alias. ORM will use it to switch database.
// param 2:        driverName
// param 3:        connection string
orm.RegisterDataBase("default", "mysql", "root:root@/orm_test?charset=utf8")

在beego中,通常会在init (example)main.go中注册驱动程序和数据库。