dydx / laravel5-couchdb

A CouchDB Driver for the Laravel 5 family.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

laravel5-couchdb

CouchDB database driver for Laravel 5

Dependencies

laravel5-couchdb uses doctrine/couchdb.

Installation

composer require dydx/laravel5-couchdb.

Add the service provider in app/config/app.php:

Mss\AdultSwim\Drivers\CouchDB::class,

When using couchdb connections, Laravel will automatically provide you with the corresponding couchdb objects.

Configuration

Change your default database connection name in app/config/database.php:

'default' => 'couchdb',

And add a new couchdb connection:

'couchdb' => array(
    'driver'   => 'couchdb',
    'type'     => 'socket',
    'host'     => 'localhost',
    'ip'       => null,
    'port'     => 5984,
    'dbname'   => 'database',
    'user'     => 'username',
    'password' => 'password',
    'logging'  => false,
),

Examples

/**
 * @var \Mss\AdultSwim\Drivers\CouchDB\CouchDbConnection
 */
$connection = DB::connection('couchdb');

/**
 * @var \Doctrine\CouchDB\CouchDBClient
 */
$couchdb = $connection->getCouchDB();

Create/Update/Find Document example

$connection = DB::connection('couchdb');
$couchdb = $connection->getCouchDB();

list($id, $rev) = $connection->postDocument(array('foo' => 'bar'));
$couchdb->putDocument(array('foo' => 'baz'), $id, $rev);
$doc = DB::connection('couchdb')->findDocument($id);

All three methods can be called on $connection or $couchdb.

About

A CouchDB Driver for the Laravel 5 family.

License:MIT License


Languages

Language:PHP 100.0%