eig / eloquent-couchdb
CouchDB Provider for the Laravel Eloquent. Includes doctrine/couchdb as a dependency in composer.json and sets up a Laravel and Eloquent-friendly Service Provider for you. Enjoy!
Requires
- php: >=7.3
- doctrine/couchdb: @dev
- illuminate/database: ^6.0
- illuminate/support: ^6.0
Requires (Dev)
- laravel/framework: ^6.0
This package is auto-updated.
Last update: 2021-06-01 18:49:40 UTC
README
CouchDB database driver for Laravel 5.5+
Dependencies
laravel-couchdb uses doctrine/couchdb.
Installation
composer require bnbwebexpertise/laravel-couchdb
.
For laravel 5.5 and older, add the service provider in app/config/app.php
:
'Bnb\Laravel\CouchDb\CouchDbServiceProvider',
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' => [ 'driver' => 'couchdb', 'type' => 'socket', 'host' => 'localhost', 'ip' => null, 'port' => 5984, 'dbname' => 'database', 'user' => 'username', 'password' => 'password', 'ssl' => false, 'logging' => false, 'timeout' => 15, ],
Examples
/** * @var \Bnb\Laravel\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.