【问题标题】:MongoDB connection not working in YII2MongoDB 连接在 YII2 中不起作用
【发布时间】:2016-06-24 13:02:16
【问题描述】:

我是 yii2 和 php 的新手。我正在使用 YII2 和 mongodb 创建一个项目,但给出错误 {"response":"failed","status_code":500,"message":"\"db\" 指的是 yii\mongodb\Connection 组件。yii\ db\Connection 是预期的。"}

我的组件文件是

 return [
    'db' => require (__DIR__ . '/_mongodb.php'),
    'urlManager' => require (__DIR__ . '/_urlRules.php'),
    'request' => require (__DIR__ . '/_request.php'),   
    'log' => require (__DIR__ . '/_log.php'),
    'response' => require (__DIR__ . '/_response.php'),
    'user' => require (__DIR__ . '/_user.php'),
    'cache' => require (__DIR__ . '/_cache.php'),
    'mailer' => require (__DIR__ . '/_mail.php'),
    'languageSelector' => require (__DIR__ . '/_languageSelector.php'),
    'i18n' => require (__DIR__ . '/_i18n.php'),    
    'assetManager' => [
        'class' => 'app\components\asset\AssetManager',
        'resource' => [
            'path' => 'resources' . DIRECTORY_SEPARATOR,
            'tempPath' => 'temp' . DIRECTORY_SEPARATOR,
            'thumbnailPath' => 'thumbs' . DIRECTORY_SEPARATOR
        ]
    ],
    'storageFactory' => [
        'class' => 'app\components\storage\StorageFactory',
        'local' => [
            'class' => 'app\components\storage\FileStorage',
            'connector' => require (__DIR__ . '/_localStorage.php')
        ],
        'network' => [
            'class' => 'app\components\storage\FileStorage',
            'connector' => require (__DIR__ . '/_localStorage.php')
        ]
    ]
]?>

_mongodb.php 文件

return [
    'class' => 'yii\mongodb\Connection',
    'dsn' => 'mongodb://localhost:27017/genie'
];

我在谷歌上试过没有发现

【问题讨论】:

    标签: php yii2


    【解决方案1】:

    Yii 框架的几个类使用了db 组件并期望它是yii\db\Connection 类型,这就是你得到错误的原因。

    一定要检查docs on the MongoDb Connection class,在这里你可以看到如何正确初始化mongodb组件。像这样配置一个新属性: mongodb => require(__DIR__ . '/mongodb.php')

    现在您可以通过 Yii::$app->mongodb 引用它来使用它

    此外,如果您不需要使用关系数据库,则只需省略 db 组件即可。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-06-17
      • 2020-11-23
      • 1970-01-01
      • 2019-08-11
      • 2015-11-02
      • 2019-12-04
      • 1970-01-01
      相关资源
      最近更新 更多