Code Monkey home page Code Monkey logo

cakephp-mongodb's Introduction

mongoDB datasource for CakePHP

Requirements

PHP5, pecl mongo (http://php.net/mongo)

Installation

this repository should be installed in the same way as any other plugin.

To install the driver for use in a single application:

cd my/app/plugins
git clone git://github.com/ichikaway/cakephp-mongodb.git mongodb

To install the driver for use in any/multiple application(s)

# where ROOT is the name of the directory parent to the base index.php of CakePHP.
cd ROOT/plugins
git clone git://github.com/ichikaway/cakephp-mongodb.git mongodb

Sample Code

To use this DB driver, install (obviously) and define a db source such as follows:

<?php
// app/config/database.php
class DATABASE_CONFIG {

	public $default = array(
		'driver' => 'mongodb.mongodbSource',
		'database' => 'driver',
		'host' => 'localhost',
		'port' => 27017,
		/* optional auth fields
		'login' => 'mongo',	
		'password' => 'awesomeness',
		'replicaset' => array('host' => 'mongodb://hoge:hogehoge@localhost:27021,localhost:27022/blog', 
		                      'options' => array('replicaSet' => 'myRepl')
				     ),
		*/
	);  

More detail of replicaset in wiki: https://github.com/ichikaway/cakephp-mongodb/wiki/How-to-connect-to-replicaset-servers

Model files need to have mongoSchema property - or make use of the schemaless behavior.

Mongo uses a primary key named "_id" (cannot be renamed). It can be any format you like but if you don't explicitly set it Mongo will use an automatic 24 character (uu)id.

Before you start, you may find it useful to see a model sample. There are also some sample controller actions: find,save,delete,deleteAll,updateAll note that your controller code needs no specific code to use this datasource.

Author

Yasushi Ichikawa (ichikaway)

Andy Dawson (AD7six)

Contributors

Predominant : Cleanup code, add documentation

Jrbasso : Cleanup code

tkyk : Fix bug, Add some function.

Reference

Reference code, Thank you!

Nate Abele's lithium mongoDB datasource

Joél Perras' divan

cakephp-mongodb's People

Contributors

ad7six avatar darrenn avatar elricho avatar ichikaway avatar jameslarking avatar nops avatar predominant avatar seguer avatar voidet avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.