radig / cakephp-mongodb
此包已被弃用且不再维护。未建议替代包。
CakePHP的MongoDB数据源,由Yasushi Ichikawa (ichikaway) 和Andy Dawson (AD7six) 从github.com/ichikaway/cakephp-mongodb 分支而来
dev-cake2.2 / 2.2.x-dev
2015-02-26 15:44 UTC
Requires
- php: >=5.3.0
- composer/installers: ~1.0
This package is auto-updated.
Last update: 2021-04-14 13:16:00 UTC
README
要求
PHP5, pecl mongo (https://php.ac.cn/mongo)
安装
此存储库应与其他插件以相同方式安装。
为单个应用程序安装驱动程序
cd my/app/Plugin
git clone git://github.com/ichikaway/cakephp-mongodb.git Mongodb
为任何/多个应用程序安装驱动程序
# where ROOT is the name of the directory parent to the base index.php of CakePHP.
cd ROOT/Plugin
git clone git://github.com/ichikaway/cakephp-mongodb.git Mongodb
示例代码
要使用此数据库驱动程序,显然需要安装并定义一个如下的数据源
<?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,
);
}
关于副本集的更多详细信息请参见wiki: https://github.com/ichikaway/cakephp-mongodb/wiki/How-to-connect-to-replicaset-servers
模型文件需要具有mongoSchema属性 - 或者使用无模式行为。
Mongo使用一个名为"_id"的主键(不能重命名)。它可以是你喜欢的任何格式,但如果未显式设置,Mongo将使用自动生成的24个字符(uu)id。
开始之前,你可能想查看以下模型示例。还有一些控制器操作示例:find,save,delete,deleteAll,updateAll 注意,你的控制器代码不需要特定代码即可使用此数据源。
作者
Yasushi Ichikawa (ichikaway)
Andy Dawson (AD7six)
贡献者
Predominant : 清理代码,添加文档
Jrbasso : 清理代码
tkyk : 修复错误,添加一些功能。
参考
参考代码,感谢!