【发布时间】:2013-04-23 14:10:17
【问题描述】:
我确实搜索了解决方案,但没有发现任何有用的信息。 This 的问题是关于将多个数据库与 datamapper 一起使用,但我已经使用了该方法。
用户模型:
class User extends DataMapper {
var $prefix = "app_";
var $db_params = 'default';
...
公司模式:
class Company extends DataMapper {
var $prefix = "tbl_";
var $db_params = 'super';
...
我有上述型号。它们与用户拥有一个公司和公司拥有许多用户相关。 当我创建公司时,会自动创建一个用户,并成功建立关系。
但是,当我尝试删除公司或尝试访问用户的相关公司时。 DataMapper 在错误的位置查找用户表。
我收到以下错误:
A Database Error Occurred
Error Number: 1146
Table 'a1210alf.app_users' doesn't exist
SELECT `tbl_companies`.* FROM (`tbl_companies`) LEFT OUTER JOIN `app_users` app_users ON `tbl_companies`.`id` = `app_users`.`company_id` WHERE `app_users`.`id` = 4
在我的 CI 配置中,我对两个数据库“默认”和“超级”有两种不同的设置。我在模型中设置了正确的一个。表 app_users 确实存在,所需的所有字段都在那里。不知道我做错了什么。
【问题讨论】:
标签: php mysql join codeigniter-2 codeigniter-datamapper