alexrom7 / cakephp-mongodb
CakePHP的MongoDB数据源
dev-master
2018-01-06 17:30 UTC
Requires
- php: >=5.3.0
- composer/installers: *
Requires (Dev)
- phpunit/phpunit: 3.7.*
This package is not auto-updated.
Last update: 2024-09-20 04:20:32 UTC
README
要求
- PHP5
- CakePHP >= 2.9.9
- pecl mongo (https://php.ac.cn/mongo)
安装
composer require gianksp/cakephp-mongodb:dev-master
示例代码
要使用此数据库驱动程序,请安装(显然)并定义一个数据库源,如下所示
<?php
//app/Config/bootstrap.php
CakePlugin::load('Mongodb');
// app/Config/database.php
class DATABASE_CONFIG {
public $default = array(
'datasource' => 'Mongodb.MongodbSource',
'host' => 'localhost',
'database' => 'blog',
'port' => 27017,
'prefix' => '',
'persistent' => 'true',
/* optional auth fields
'login' => 'mongo',
'password' => 'awesomeness',
'replicaset' => array('host' => 'mongodb://hoge:hogehoge@localhost:27021,localhost:27022/blog',
'options' => array('replicaSet' => 'myRepl')
),
*/
);
// To make sure all tests are passing create the following entry in app/Config/database.php
public $test = array(
'datasource' => 'Mongodb.MongodbSource',
'database' => 'test_mongo',
'host' => 'localhost',
'port' => 27017,
);
}
关于replicaset的更多详细信息请参考wiki:https://github.com/gianksp/cakephp-mongodb/wiki/How-to-connect-to-replicaset-servers
模型文件需要具有mongoSchema属性 - 或者使用无模式行为。
Mongo使用名为"_id"的主键(不能重命名)。它可以是你喜欢的任何格式,但如果没有明确设置,Mongo将使用自动生成的24位(uu)id。
在开始之前,您可能想查看一个模型示例。还有一些控制器操作示例:find,save,delete,deleteAll,updateAll,请注意,您的控制器代码不需要特定的代码即可使用此数据源。
维护者
Giancarlo Sanchez (gianksp)