sngularai / neo4j-bundle
Neo4j的Symfony集成
0.4.9
2023-01-09 11:24 UTC
Requires
- php: ^7.0
- sngularai/neo4j-php-client: ^5.0
- symfony/dependency-injection: ^2.8.3 || ^3.0.3 || ^4.0 || ^5.0
- symfony/framework-bundle: ^2.8.32 || ^3.0 || ^4.0 || ^5.0
- symfony/http-kernel: ^2.8 || ^3.0 || ^4.0 || ^5.0
- twig/twig: ^1.18 || ^2.0
Requires (Dev)
- matthiasnoback/symfony-dependency-injection-test: ^2.3
- symfony/phpunit-bridge: ^3.3 || ^4.0 || ^5.0
Suggests
- graphaware/neo4j-php-ogm: To have EntityManager support
README
安装
通过Composer
$ composer require neo4j/neo4j-bundle
如果您想使用 EntityManager
,则需要安装一个 GraphAware OGM
$ composer require graphaware/neo4j-php-ogm:@rc
在您的内核中启用此包
<?php // app/AppKernel.php public function registerBundles() { $bundles = array( // ... new Neo4j\Neo4jBundle\Neo4jBundle(), ); }
文档
该包是注册服务的一种便捷方式。我们注册 Connections
、Clients
和 EntityManagers
。您总是可以访问默认服务的别名
- neo4j.connection
- neo4j.client
- neo4j.entity_manager.*
最小配置
neo4j: connections: default: ~
使用最小配置,我们将拥有以下命名的服务:
- neo4j.connection.default
- neo4j.client.default
- neo4j.entity_manager.default*
完整配置
neo4j: profiling: enabled: true connections: default: scheme: bolt # default (must be either "http" or "bolt") host: localhost # default port: 7474 # optional, will be set to the proper driver's default port if not provided username: neo4j # default password: neo4j # default second_connection: username: foo password: bar third_connection: dsn: 'bolt://foo:bar@localhost:7687' clients: default: connections: [default, second_connection, third_connection] other_client: connections: [second_connection] foobar: ~ # foobar client will have the "default" connection entity_managers: default: client: other_client # defaults to "default" cache_dir: "%kernel.cache_dir%/neo4j" # defaults to system cache
使用上述配置,我们将拥有以下命名的服务:
- neo4j.connection.default
- neo4j.connection.second_connection
- neo4j.client.default
- neo4j.client.other_client
- neo4j.client.other_foobar
- neo4j.entity_manager.default*
* 注意:如果已安装 graphaware/neo4j-php-ogm
,则EntityManagers将可用。
测试
$ composer test
示例应用程序
请参阅示例应用程序: https://github.com/neo4j-examples/movies-symfony-php-bolt
许可证
MIT许可证(MIT)。有关更多信息,请参阅 许可证文件。