一个控制器中的两个数据库 cakePHP

发布于 2024-09-02 09:21:27 字数 219 浏览 4 评论 0原文

我在创建页面时遇到问题,该页面需要两个不同的数据库。

控制器自动设置为“DB2”,这也在数据库配置文件中指定。

当我将 var $uses = array ('groups') 添加到来自另一个 DB (DB1) 的控制器时,我仅从 DB2 获取数据,并且对 DB1 的所有请求都变成无效查询。

你们知道吗?解决方案?

提前致谢!

问候, 斯温

I'm having trouble creating a page, which requires two different databases..

The controller is automaticly set to 'DB2', which is also specified in the database config file.

When i add a var $uses = array ('groups') to the controller, which is from the other DB (DB1), i get the data from only DB2 and all requests to DB1 become a invalid query..

u guys know a solution?

Thanks in advance!

Regards,
Swen

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

会发光的星星闪亮亮i 2024-09-09 09:21:27

如果您的 config/database.php 文件中定义了多个数据源,您应该能够告诉您的 Group 模型使用第二个(非默认)配置:

public $useDbConfig = 'db2';

您的 < code>config/database.php 文件应如下所示:

class DATABASE_CONFIG {

  var $default = array(
    'driver' => 'mysql',
    'persistent' => false,
    'host' => 'your_host',
    'login' => 'your_login_1',
    'password' => 'your_password_1',
    'database' => 'DB1', 
    'prefix' => '' 
  );

  var $db2 = array(
    'driver' => 'mysql',
    'persistent' => false,
    'host' => 'your_host',
    'login' => 'your_login_2',
    'password' => 'your_password_2',
    'database' => 'DB2', 
    'prefix' => '' 
  );
}

If have multiple datasources defined in your config/database.php file, you should be able to tell your Group model to use the second (non-default) config:

public $useDbConfig = 'db2';

Your config/database.php file should looks something like this:

class DATABASE_CONFIG {

  var $default = array(
    'driver' => 'mysql',
    'persistent' => false,
    'host' => 'your_host',
    'login' => 'your_login_1',
    'password' => 'your_password_1',
    'database' => 'DB1', 
    'prefix' => '' 
  );

  var $db2 = array(
    'driver' => 'mysql',
    'persistent' => false,
    'host' => 'your_host',
    'login' => 'your_login_2',
    'password' => 'your_password_2',
    'database' => 'DB2', 
    'prefix' => '' 
  );
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文