radig/cakephp-mongodb

此包已被弃用且不再维护。未建议替代包。

CakePHP的MongoDB数据源,由Yasushi Ichikawa (ichikaway) 和Andy Dawson (AD7six) 从github.com/ichikaway/cakephp-mongodb 分支而来

安装: 18

依赖者: 0

建议者: 0

安全: 0

星标: 4

关注者: 7

分支: 148

类型:cakephp-plugin

dev-cake2.2 / 2.2.x-dev 2015-02-26 15:44 UTC

This package is auto-updated.

Last update: 2021-04-14 13:16:00 UTC


README

Build Status

要求

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 : 修复错误,添加一些功能。

参考

参考代码,感谢!

Nate Abele的lithium mongoDB数据源

Joél Perras的divan