-2

Symfony 5.0 では、エンティティ内の services.yaml で定義されたパラメーターにアクセスする必要があります。次のように、services.yaml の parameter_bag をエンティティに挿入する場合

App\Entity\MyEntity:
    class: App\Entity\MyEntity
    calls:
        - [setParameterBag, ['@parameter_bag']]

新しいエンティティを作成すると機能します

$myEntity = new MyEntity();

setParameterBag(..)次に、次のように定義された MyEntity.phpの my 関数を使用して、パラメーター バッグを挿入します。

private $params;
public function setParameterBag(ParameterBagInterface $params) {
    $this->params = $params;
}

ただし、エンティティが DB から読み込まれる場合$this->paramsは null です。パラメータバッグをエンティティに注入する正しい方法 (または任意の方法) は何ですか?

4

1 に答える 1