51systems / doctrine-extensions-module
此包已被废弃且不再维护。没有建议的替代包。
Doctrine2 扩展
v1.3.2
2016-11-21 00:07 UTC
Requires
- php: >=5.4
- 51systems/zf2-extensions: ^1.1
- doctrine/orm: >=2.4.0
- gedmo/doctrine-extensions: >=2.3.6
- zendframework/zend-authentication: >=2.2
- zendframework/zend-modulemanager: >=2.2
Requires (Dev)
- phake/phake: ^2.2
- phpunit/phpunit: ~4
README
Doctrine2 ORM 扩展集合
功能
- 控制器插件
- EntityManagerProvider (entityManagerProvider) - 返回 orm_default 实体管理器
- AuthenticatedUserProvider (authenticatedUserProvider) - 获取当前认证的用户(如果有)
- InitFormPlugin (initForm) - 初始化可能需要实体管理器的表单。同时也设置了一个 doctrine 对象水化器。
- 数据固定
- AddIfNotPresentTrait - 辅助特质,用于轻松地仅添加已存在于数据库中的固定实体
- 类型
- UTCDateTime (
utc_datetime
) 类型,根据 Doctrine 食谱。在查询时请小心使用
- UTCDateTime (
- Gedmo 扩展
- Timestampable
- 扩展 Timestampable 扩展以支持 UTCDateTime (
utc_datetime
)。在配置文件中应使用DoctrineExtensions\Gedmo\Timestampable\TimestampableListener
替代Gedmo\Timestampable\TimestampableListener
- 扩展 Timestampable 扩展以支持 UTCDateTime (
- Timestampable
- 水化器
- 单列水化器
- ORM
- 仓库
- SubclassRepositoryFactory,它将返回一个使用类层次结构中最定义的仓库定义的仓库
- 特质
- UTCTimestampableEntity - 使用 UTCDateTime Timestampable 行为
- EntityManagerAwareTrait - 为对象提供获取和设置 EntityManager 实例的方法。
- 别名
- 一个更智能的别名,用于与 doctrine 查询构建器一起使用。允许构建/链式多个别名进行子查询。
- 仓库
跳过器
为了在跳过器中使自定义类型正常工作,您需要创建一个 自定义配置文件 并包含以下内容
<ormd2-configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<orm-configuration name="Doctrine2">
<data-types>
<data-type name="utc_datetime"/>
</data-types>
</orm-configuration>
</ormd2-configuration>
安装
通过 composer 安装。
在 application.config.php 中将 DoctrineExtensions
添加到模块中
配置设置
将 doctrine-extensions.global.php.dist 复制到您的配置目录,并将其重命名为 doctrine-extensions.global.php。根据需要进行修改。
测试
一些单元测试依赖于其他模块的测试类。在安装 composer 时使用 --prefer-source
以运行它们。