dalv / arangodbbundle
ArangoDB的Symfony2集成
dev-master
2020-12-16 18:16 UTC
Requires
- symfony/framework-bundle: >=2.1.0
- triagens/arangodb: >=2.0.0
This package is not auto-updated.
Last update: 2024-09-27 13:09:24 UTC
README
这是一个将ArangoDb(http://arangodb.org)简单集成到Symfony2的示例
状态
这是一个高度实验性的集成,ArangoDb本身也是实验性的,并且有一些非常规的“黑客”技巧。
这个集成做了什么?
这个包处理几个方面:
- 它使ArangoDb连接在symfony中可配置
- 它提供了一个漂亮的数据收集器,这样你可以在symfony分析器中看到正在发生的事情
- 它还包含了一个FOSUser集成(本应在一个独立的包中,但随便吧)
安装
这是一个普通的symfony包,因此安装应该是直接的。由于它的实验性状态,目前还没有通过packagist的composer集成。不过,你可以很容易地通过composer安装这个包
步骤1:在composer.json的仓库部分注册这个github仓库
"repositories": [
...
{
"type":"vcs",
"url":"https://github.com/m0ppers/MopArangoDbBundle.git"
}
...
],
步骤2:这个包需要ArangoDB-PHP。将这两个包添加到你的composer.json中
"require": {
..
"mop/arangodbbundle" : "dev-master",
"triagens/ArangoDb": "2.0.*",
..
}
ArangoDB-PHP附带大量文档和示例。请在此处查看
https://github.com/triAGENS/ArangoDb-PHP
基本配置
连接
在app/config/config.yml中
mop_arango_db:
default_connection: main # optional will be set to the first connection if not present
connections:
main:
host: 127.0.0.1
port: 8529
应该很明显。一旦配置,这个包就会处理连接的懒加载。
你现在可以使用sf2的DI-Container访问你的avocado连接
$connection = $container->get('mop_arangodb.default_connection');
or
$connection = $container->get('mop_arangodb.connections.main');
FOS Userbundle集成
mop_arango_db:
fos:
connection: main
collection: users
之后,在arangodb中创建集合。
然后你必须告诉fos它应该使用arangodb驱动程序
fos_user:
db_driver: custom
user_class: Acme\DemoBundle\Entity\User
firewall_name: main
service:
user_manager: mop_arangodb.fos.user_manager