aarcarv / laravel-couchdb
Laravel 4 的 CouchDB 数据库驱动
dev-master
2022-11-03 13:57 UTC
Requires
- php: >=5.3.0
- doctrine/couchdb: 1.0.*@dev
- laravel/framework: >=4.1.0
This package is auto-updated.
Last update: 2024-09-30 01:54:30 UTC
README
Laravel 4 的 CouchDB 数据库驱动
依赖关系
laravel-couchdb 使用 doctrine/couchdb-client. 这个包将通过 composer 自动为您下载。
安装
将包添加到您的 composer.json
并运行 composer update
。
{ "require": { "rbewley4/laravel-couchdb": "dev-master" } }
在 app/config/app.php
中添加服务提供者
'Rbewley4\Laravel\Couchdb\CouchdbServiceProvider',
服务提供者将注册一个与原始数据库管理器关联的 couchdb 数据库扩展。不需要注册额外的外观或对象。当使用 couchdb 连接时,Laravel 将自动为您提供相应的 couchdb 对象。
配置
在 app/config/database.php
中更改默认数据库连接名称
'default' => 'couchdb',
并添加一个新的 couchdb 连接
'couchdb' => array( 'driver' => 'couchdb', 'type' => 'socket', 'host' => 'localhost', 'ip' => null, 'port' => 5984, 'dbname' => 'database', 'user' => 'username', 'password' => 'password', 'logging' => false, ),
Eloquent, Query Builder, Schema Builder
抱歉,我们目前不支持这些组件。
示例
laravel-couchdb 提供您直接访问 CouchDBClient 对象的方式,并期望您使用它进行所有 CouchDB 交互。
有关 CouchDBClient 的更多信息,请参阅 doctrine/couchdb-client。
获取 CouchDBClient 处理器
/** * @var \Rbewley4\Laravel\Couchdb\CouchdbConnection */ $connection = DB::connection('couchdb'); /** * @var \Doctrine\CouchDB\CouchDBClient */ $couchdb = $connection->getCouchDB();
注意:您可以通过在 CouchdbConnection 上调用它们来在 CouchDBClient 上调用方法。这是通过使用魔法方法实现的。
创建/更新/查找文档
这里我们演示了在 CouchDB 上可以执行的三种不同操作,并展示了三种不同的调用这些方法的方式
$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);
请注意,所有三种方法都可以在 $connection 或 $couchdb 上调用。