多数据库怎么样使用?文档只写了怎么配置

如题:

QQ截图20170831201254.png

 
数据库配置好多数据库后,在modal中如何切换数据库,一直是默认的数据库
已邀请:

dogstar - PhalApi创始人

赞同来自:

配置是对的。如果要切换数据库,需要为不同的表配置不同的数据库标识(combo_users,或者combo_course),然后实现对应的Model类即可自动切换。例如:
        'demo' => array(                                                //表名
'prefix' => 'xcb_', //表名前缀
'key' => 'id', //表主键名
'map' => array( //表路由配置
array('db' => 'combo_course'), //单表配置:array('db' => 服务器标记)
),
),
实现Model类:
class Model_Demo {

public function getInfo() {
return $this->getORM()-> .... // 这样就可以切换数据库了
}
}

One

赞同来自:

我现在在数据库这样配置:

QQ截图20170831214650.png

,然后model这样设置:

QQ截图20170831214822.png

 
访问是提示:

QQ图片20170831215014.png

改提示是 combo_users 库没有找到xcb_mobile_validate_log表
我的 __default__ 设置的combo_users 现在我需要切换的是combo_course

dogstar - PhalApi创始人

赞同来自:

类名改一下,把Model_Course换成Course。

One

赞同来自:

我改了,但是现在还是提示:
Fatal error: Uncaught exception 'PDOException' with message 'Table 'combo_users.xcb_mobile_validate_log' doesn't exist' 
 
对了,我的版本是 2x 版本。

dogstar - PhalApi创始人

赞同来自:

上面 Model类的代码,截全一点。你是不是定义了表名xcb_mobile_validate_log?你有配置xcb_mobile_validate_log这个表的数据库路由吗?

QQ截图20170831231744.jpg

 

One

赞同来自:

OK了,原来是每个表都要写对应的 table ,谢谢指点。

gogo7707

赞同来自:

每个表都要写 tables ?  能否写个数据库切换的指令呢? 例如 use($db)  或者 select_db($db), 可能更容易理解一点

要回复问题请先登录注册