func Regist() {
dbUser := "root"
dbName := "android" //数据库名字
dbPwd := "123456"
dbLink := fmt.Sprintf("%s:%s@/%s?charset=utf8", dbUser, dbPwd, dbName) //数据库连接字符串
orm.RegisterModel(new(User), new(Selftest), new(Appointment), new(Archive), new(Topic))
orm.RegisterDriver("mysql", orm.DR_MySQL) //注册数据库驱动
orm.RegisterDataBase("default", "mysql", dbLink) //注册数据库,并设置默认数据库
}
注册数据库的代码是这样写的,数据库里面有android这个数据库。我第一次是用系统自动生成的test数据库,是这个问题,然后我自己建了一个数据库还是这个问题!!要肿么解决呢?
额。。好歹把报出的错误贴下吧
找到原因了。
我在操作数据库的时候用了这样的:var o=orm.NewOrm()定义了一个全局变量。每个表的操作都是用的这个全局变量,导致了问题的出现。然后我把全局变量删除掉,使用局部变量,就可以顺利的运行了。具体为什么会这样,正在阅读Beego源码,查找原因当中。希望知道原因的大牛指点一下,谢谢!!!