DoctrineBehaviors
vior 2.3 Released
この PHP ライブラリは、Doctrine エンティティとリポジトリに動作を追加するトレイトとインターフェイスのコレクションです。
現在、次のものを処理しています。
composer require knplabs/doctrine-behaviors
あなたがしなければならないのは、Doctrine エンティティを定義することだけです。
ツリーなどの一部の動作では、リポジトリの特性を使用できます。
<?php
declare (strict_types= 1 );
namespace App Repository ;
use Doctrine ORM EntityRepository ;
use Knp DoctrineBehaviors ORM Tree TreeTrait ;
final class CategoryRepository extends EntityRepository
{
use TreeTrait;
}
ほら!
これで、次のように動作する作業用Category
が完成しました。
PHPStan 拡張機能が利用可能で、次の機能を提供します。
TranslatableInterface::getTranslations()
およびTranslatableInterface::getNewTranslations()
に正しい戻り値の型を提供します。TranslatableInterface::translate()
の正しい戻り値の型を提供します。TranslationInterface::getTranslatable()
の正しい戻り値の型を提供します。プロジェクトの PHPStan 構成にphpstan-extension.neon
を含めます。
# phpstan.neon
includes :
- vendor/knplabs/doctrine-behaviors/phpstan-extension.neon
プルリクエストごとに 1 つの機能
新機能にはテストが必要
テストと静的分析に合格する必要があります。
vendor/bin/phpunit
composer fix-cs
composer phpstan
1と2ではかなりの変更点がありますが、心配しないでください。このパッケージは、アップグレードを処理する Rector を使用します。
composer require rector/rector --dev
rector.php
構成を作成します。
vendor/bin/rector init
Doctrine Behaviors アップグレード セットをrector.php
に追加します。
use Rector Core Configuration Option ;
use Symfony Component DependencyInjection Loader Configurator ContainerConfigurator ;
use Rector Doctrine Set DoctrineSetList ;
return static function ( ContainerConfigurator $ containerConfigurator ): void {
$ containerConfigurator -> import (DoctrineSetList:: DOCTRINE_BEHAVIORS_20 );
};
レクターを実行します。
vendor/bin/rector process src