richcongress / normalizer-extension-bundle
此包在规范化后添加另一个处理过程来注入或编辑一些数据。
v4.0.0
2024-09-24 08:17 UTC
Requires
- php: ^8.1
- richcongress/bundle-toolbox: ^2.0
- symfony/cache: ^6.0 || ^7.0
- symfony/config: ^6.0 || ^7.0
- symfony/dependency-injection: ^6.0 || ^7.0
- symfony/http-kernel: ^6.0 || ^7.0
- symfony/serializer: ^6.0 || ^7.0
Requires (Dev)
- php-coveralls/php-coveralls: ^2.1
- richcongress/static-analysis: ^0.2
- richcongress/test-suite: ^0.2
- roave/security-advisories: dev-latest
- symfony/property-access: ^6.0 || ^7.0
- symfony/yaml: ^6.0 || ^7.0
README
本版本包需要 Symfony 6.0+ 和 PHP 8.1+。
normalizer-extension-bundle 为 Symfony Serializer 提供了扩展功能。
快速入门
normalizer-extension-bundle 默认已准备好。您现在可以创建自己的对象规范化扩展
use RichCongress\NormalizerExtensionBundle\Serializer\Normalizer\Extension\AbstractObjectNormalizerExtension; class DummyEntityNormalizerExtension extends AbstractObjectNormalizerExtension { /** * @var string */ public static $objectClass = DummyEntity::class; /** * Prefix to add before every context */ public static $contextPrefix = 'dummy_entity_'; /** * ['serialization_group' => 'propertyName'] * * @return array */ public static function getSupportedGroups(): array { return [ 'is_beautiful_enough' => 'isBeautifulEnough', 'name' => 'wonderfulName', ]; } public function isBeautifulEnought(): bool { return true; } public function getWonderfulName(): string { return 'DummyEntity is its name'; } }
目录
1. 安装
本版本包需要 Symfony 6.0+ 和 PHP 8.1+。
1.1 Composer
composer require richcongress/normalizer-extension-bundle
1.2 包声明
安装后,请确保在 Kernel 的包列表中正确声明了此包。
new RichCongress\NormalizerExtensionBundle\RichCongressNormalizerExtensionBundle::class => ['all' => true],
2. 入门
3. 版本管理
normalizer-extension-bundle 遵循 语义版本控制。简而言之,方案是 MAJOR.MINOR.PATCH,其中
- MAJOR 发生更改时,表示有破坏性更改,
- MINOR 发生更改时,表示以向后兼容的方式添加了新功能,
- PATCH 发生更改时,表示以向后兼容的方式修复了错误。
低于 1.0.0 的版本被认为是实验性的,任何时间都可能发生破坏性更改。
4. 贡献
欢迎贡献!有许多贡献方式,我们感激所有方式。以下是一些主要的
- 错误报告:虽然我们努力提供高质量的软件,但错误可能发生,我们无法修复我们不了解的问题。因此,即使您不确定或只是想提问,也请报告。任何问题都可能表明文档还可以改进!
- 功能请求:您的用例未涵盖当前 API?想要建议更改或添加某些内容?我们将很高兴阅读它并开始讨论,以尝试找到最佳解决方案。
- 拉取请求:想要贡献代码或文档?我们将非常乐意!如果您需要帮助开始,GitHub 提供了有关拉取请求的 文档。我们使用 “fork and pull” 模型,其中贡献者将更改推送到他们的个人分支,然后创建对主存储库的拉取请求。请确保您的拉取请求针对
master
分支。
提醒一下,所有贡献者都应遵守我们的 行为准则。
5. 开发
您可能需要使用 Docker 和 docker-compose
来开发项目。查看以下命令。
# Start the project docker-compose up -d # Install dependencies docker-compose exec application composer install # Run tests docker-compose exec application vendor/phpunit/phpunit/phpunit # Run a bash within the container docker-compose exec application bash
6. 许可证
normalizer-extension-bundle 在 MIT 许可证的条款下分发。
有关详细信息,请参阅许可协议。