grifix / normalizer-bundle
此包已被废弃,不再维护。未建议替代包。
Grifix normalizer Symfony集成
4.0.0
2022-11-23 08:17 UTC
Requires
- php: ^8.1
- grifix/normalizer: ^4.0
Requires (Dev)
- nyholm/symfony-bundle-test: ^2.0
- phpunit/phpunit: ^9.5
README
将 grifix/normalizer 与 Symfony 集成
安装
composer require grifix/normalizer-bundle
使用
- 阅读Grifix Normalizer 文档
- 将normalizer作为依赖项注入或从 Symfony 容器 获取,而不是通过
Normalizer::create()
创建它 - 使用
packages/grifix_normalizer.yaml
而不是方法registerCustomObjectNormalizer
registerDefaultObjectNormalizer
- 而不是使用
registerDependency
方法,通过 Symfony 容器 注册依赖
默认normalizer配置示例
打开 packages/grifix_normalizer.yaml
并将以下配置添加到 grifix_normalizer.normalizers
部分
grifix_normalizer:
normalizers:
#date
- name: date
class: Grifix\NormalizerBundle\Tests\Dummies\DateNormalizer
schemas:
- - property: value
type: string
#entity
- name: entity
version_converter: Grifix\NormalizerBundle\Tests\Dummies\EntityVersionConverter
object_class: Grifix\NormalizerBundle\Tests\Dummies\Entity
dependencies:
- service
schemas:
#version 1
- - property: name
type: string
- property: dates
type: array_of_objects
allowed_normalizers: [date]
- property: public
type: boolean
- property: number
type: integer
- property: price
type: number
- property: notes
type: array
- property: mixed
type: mixed_object
#version 2
- - property: name
type: string
- property: dates
type: array_of_objects
allowed_normalizers: [date]
- property: public
type: boolean
- property: number
type: integer
- property: price
type: number
- property: notes
type: array
- property: mixed
type: mixed_object
- property: date
type: object
allowed_normalizers: [date]
nullable: true
#vo
- name: vo
object_class: Grifix\NormalizerBundle\Tests\Dummies\Vo
schemas:
- - property: value
type: string
- 将
Grifix\NormalizerBundle\Tests\Dummies\EntityVersionConverter
注册为公开服务 - 将
Entity
依赖项注册为公开服务
自定义normalizer配置示例
打开 packages/grifix_normalizer.yaml
并将以下配置添加到 grifix_normalizer.normalizers
部分
#date
- name: date
class: Grifix\NormalizerBundle\Tests\Dummies\DateNormalizer
schemas:
- - property: value
type: string