关于beego的数据库访问,orm.RegisterDriver的用途是什么?

dbHost := beego.AppConfig.String("DBHost")
dbPort := beego.AppConfig.String("DBPort")
dbUser := beego.AppConfig.String("DBUser")
dbPass :=beego.AppConfig.String("DBPass")
dbName :=beego.AppConfig.String("DBName")

dbDSN:=fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8",dbUser,dbPass,dbHost,dbPort,dbName)

orm.RegisterDriver("mysql", orm.DR_MySQL);
orm.RegisterDataBase("default","mysql",dbDSN)

orm.RegisterModel(new(User))

在上面的代码中,完全可以把orm.RegisterDriver去掉也是可以的!另外官网介绍的另一种RegisterDatabase的方法,对于dbDSN好像不需要指定主机名和端口,这个是需要配置文件里面的mysql配置部分必须和官网的一样么,使用这样行不行?

DBHost = localhost

DBPort = 3306

DBUser = root

DBPass = xinxin

DBName = duokr_school

谢谢!

共 2 个回复


jemygraw

这个是注册数据库驱动用的,之所以问这个问题,是奇怪mysql不用注册也可以用,后来发现框架默认已经注册了mysql的驱动,所以才可以用的,问题解决了。

# 0