【问题标题】:Multiple database connection Yii2 not working多个数据库连接 Yii2 不起作用
【发布时间】:2015-11-02 03:01:40
【问题描述】:
Yii::setAlias('@tests', dirname(__DIR__) . '/tests');

$params = require(__DIR__ . '/params.php');
$db = require(__DIR__ . '/db.php');
$dbPusat = require(__DIR__ . '/dbPusat.php');
$dbPaperless = require(__DIR__ . '/dbPaperless.php');

return [
    'id' => 'basic-console',
    'basePath' => dirname(__DIR__),
    'bootstrap' => ['log', 'gii'],
    'controllerNamespace' => 'app\commands',
    'modules' => [
        'gii' => 'yii\gii\Module',
    ],
    'components' => [
        'cache' => [
            'class' => 'yii\caching\FileCache',
        ],
        'log' => [
            'targets' => [
                [
                    'class' => 'yii\log\FileTarget',
                    'levels' => ['error', 'warning'],
                ],
            ],
        ],
        'db' => $db,
        'dbPusat' => $dbPusat,
        'dbPaperless' => $dbPaperless,
    ],
    'params' => $params,
];

在我的 console.php 中,我有 3 个连接,分别是 db、dbPusat 和 dbPaperless。 对于 db 和 dbPusat 它的工作完美。但对于 dbPaperless,它没有被检测到。当我想从该连接生成模型时,会出现这样的错误。

请帮帮我,谢谢。

【问题讨论】:

标签: yii2 dbconnection


【解决方案1】:

从配置格式我假设你是基于基本应用的。在您的解释中,您提到在“您的 console.php-config 您已经定义了 3 个连接”中。这些仅适用于控制台。

您添加的屏幕截图清楚地显示了一个网络界面。因此,我只能得出结论,您没有在web.php-config 中添加相同的 3 个连接。

当您在命令行上启动操作时,基本应用程序使用console.php(通过./yii,当您通过浏览器访问应用程序时,它使用web.php

所以基本上:将您的连接配置复制到web.php 中,您应该没问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-31
    • 1970-01-01
    • 1970-01-01
    • 2014-05-20
    相关资源
    最近更新 更多