weew / container-doctrine-integration
使doctrine仓库在weew/container中可注入。
v1.0.1
2016-07-21 11:17 UTC
Requires
- doctrine/orm: ^2.5
- weew/container: ^1.0
Requires (Dev)
- phpunit/phpunit: ^4.7
- satooshi/php-coveralls: ^0.6.1
This package is not auto-updated.
Last update: 2024-09-10 21:52:41 UTC
README
目录
安装
composer require weew/container-doctrine-integration
简介
由于doctrine仓库本身不易实例化,因此它们本身不可注入。要使其工作,您需要使用工厂、参数解析等。这正是本包所做的工作,它使doctrine仓库通过weew/container容器可注入。
约定
您必须遵循某些约定才能使doctrine仓库可注入。仓库加载器执行此类仓库名称到实体名称的转换:`Vendor\Package\Repositories\FooRepository` 应映射到此实体 `Vendor\Package\Entities\Foo`。
如果此名称匹配策略对您来说不够充分,您可以提供自己的 `IRepositoryNameParser` 接口实现。
用法
要使仓库可注入,只需创建一个 `IDoctrineRepositoriesLoader` 的新实例,传入一个 `IContainer` 实例和一个 `ObjectManager` 实例,并启用它。
$loader = new DoctrineRepositoriesLoader($container, $om); $loader->enable();