sbooker / doctrine-object-mapping
Doctrine 对象类型映射支持
1.1.0
2022-04-27 14:18 UTC
Requires
- php: ^7.3 || ^8.0
- ext-json: *
- doctrine/dbal: ^2.4
- symfony/http-kernel: ^5.0 || ^6.0
- symfony/serializer: ^5.0 || ^6.0
Requires (Dev)
- phpunit/phpunit: ^9.1
This package is auto-updated.
Last update: 2024-09-27 20:20:51 UTC
README
将不可变对象和对象列表映射到单个 JSON 字段。
安装
请确保已全局安装 Composer,具体请参考 Composer 文档中的安装章节。
不使用 Symfony 的应用程序
步骤 1:下载库
$ composer require sbooker/doctrine-object-mapping
步骤 2:创建并注册 Doctrine 类型
class Concrete { /* ... */ } class ConcreteType extends \Sbooker\DoctrineObjectMapping\ObjectType { protected function getObjectClass(): string { return Concrete::class; } public function getName() { return 'concrete'; } } \Doctrine\DBAL\Types\Type::addType('concrete', ConcreteType::class); // Create or get normalizer $normalizer = new \Symfony\Component\Serializer\Normalizer\ObjectNormalizer(/*...*/); // Set serializer to type on boot application /** @var \Sbooker\DoctrineObjectMapping\NormalizableType $type */ $type = \Doctrine\DBAL\Types\Type::getType('concrete'); $type->setNormalizer($normalizer); $type->setDenormalizer($normalizer);
使用 Symfony 的应用程序
使用 sbooker/doctrine-object-mapping-bundle
许可证
请参阅LICENSE文件。