2

我的 MongoDB 数据源位于plugins/mongodb中。

根据2.0 中的新类加载器,我应该这样做:

App::uses('MongodbSource', 'Mongodb.Model/Datasource');

但是我该如何启动呢?

还是使用 ConnectionManager 是最佳实践?如果是这样,我该如何导入它?

4

2 回答 2

7

如果您想使用自己的方式并“手动”加载此数据源,而不是像 Matt 所说的那样,您可以这样启动它:

# /path/to/your/datasource
class MongoDbDatasource {...} //check how this class is named!

在您加载它的文件中,您可以执行以下操作:

App::uses('MongodbSource', 'Mongodb.Model/Datasource');
$mongodb = new MongoDbDatasource();

但如前所述,databsae 配置将是更好的方法:

public $default = array(
    'datasource' => 'Mongodb.MongodbSource',
    'database' => 'mydbname',
    'host' => 'yourhost',
    'port' => 'yourport',
    'login' => 'yourlogin',
    'password' => 'yourpassword'
);

现在您只需添加CakePlugin::load('Mongodb');到您bootstrap.php的插件即可加载。

于 2011-06-22T14:01:45.710 回答
1

您需要告诉您的数据库配置要使用哪个数据源:

class DATABASE_CONFIG {

public $default = array(
    'datasource' => 'Database/Mysql',
    'persistent' => false,
    'host' => 'localhost',
    'login' => 'user',
    'password' => 'password',
    'database' => 'database_name',
    'prefix' => '',
);

}
于 2011-06-20T11:59:48.913 回答