遇到问题描述如下:
项目中用到两数据库 ,一个基础数据库,基础数据库hq_gynzsxjy中有个站内信息表 hq_sf_message ; 一个微圈数据库hq_gynzsxjy_sxq(简化微信好友圈功能),微圈数据库有同样有个 消息表hq_sxq_message;
项目为采用了分组,Model目录大致如下
Model
Base
MessageModel.class.php,对应hq_sf_message表
Sxq
MessageModel.class.php对应hq_sxq_message表
项目关闭debug模式,开启数据字段缓存
Runtime\Data\_fields下只生成文件hq_gynzsxjy.message.php,未生成hq_qynzsxjy_sxq.message.php文件
两个表结构并不一致的,导致已生成缓存后,另一个信息表的相关操作有误(所取字段不同);
查询tp框架后解决办法:
thinkphp的核心文件Model.class.php中
/** * 自动检测数据表信息 * @access protected * @return void */ protected function _checkTableInfo() { // 如果不是Model类 自动记录数据表信息 // 只在第一次执行记录 if(empty