DoctrineExtensions
v3.17.1
该软件包包含 Doctrine ORM 和 MongoDB ODM 的扩展,提供新功能或工具以更有效地使用 Doctrine。这些行为可以很容易地附加到 Doctrine 的事件系统中,并以行为的方式处理正在刷新的记录。
3.0 的重点是针对当今的 PHP 更新此包。这包括:
阅读升级文档以获取更多信息。
composer require gedmo/doctrine-extensions
所有扩展都支持Attribute 、 XML和Annotation (已弃用)映射。使用映射扩展可以轻松实现附加映射驱动程序来处理附加元数据映射。
^3.2
(对于所有扩展)或^4.0
(对于所有扩展,除了Loggable )^2.14
或^3.0
^2.3
如果您在没有框架的情况下设置实体管理器,请参阅示例以防止出现类似 #1310 的问题
XML 映射需要位于不同的命名空间中,Doctrine 扩展声明的命名空间是 http://gediminasm.org/schemas/orm/doctrine-extensions-mapping 所以根节点现在看起来像这样:
< doctrine-mapping xmlns = " http://doctrine-project.org/schemas/orm/doctrine-mapping "
xmlns : gedmo = " http://gediminasm.org/schemas/orm/doctrine-extensions-mapping " >
...
</ doctrine-mapping >
XML 映射 xsd 架构也是版本化的,可以通过版本后缀使用:
要设置并运行测试,请按照下列步骤操作:
docker compose
docker compose up -d
以守护进程模式启动容器docker compose exec php bash
进入容器(您现在位于根目录: /var/www
)composer install
安装 Composer 依赖项vendor/bin/phpunit
要设置并运行示例,请按照下列步骤操作:
composer install
example/em.php
并在文件顶部配置数据库php example/bin/console
或php example/bin/console
用于控制台命令php example/bin/console orm:schema-tool:create
创建模式php example/bin/console app:print-category-translation-tree
运行示例以打印类别翻译树感谢参与这些伟大学说扩展开发的每个人!
尤其是那些创建和维护新扩展的人: