0

ベストプラクティスについて質問があります。フォームの検証のために、Symfony では、以下に示すように Acme\Bundle\Resource\config\validation.yml を使用して検証できることに気付きました。

Acme\Bundle\Entity\School
    properties:
       zipCode:
            - MinLength: 5

または、クラス自体でアサーションを使用することもできます。Acme\Bundle\Entity\School.php では、次のようになります。

...
class School
{
 ...
 /**
  * @Assert\MinLength(limit="5", message="Zipcode too short")
  */
 protected $zipCode;
 ...
}

どちらがより良い練習ですか?それとも単なる好みですか?

4

2 に答える 2

2

それは完全にあなた次第です。そのため、彼らはさまざまな方法を提供しています。

1 つのバンドルで使用できるタイプは 1 つだけであることを忘れないでください。

于 2013-06-05T20:25:57.877 に答える
2

Jessica は両方の方法がベスト プラクティスであることは正しいですが@Assert、エンティティに関連するすべてのデータをエンティティに保持するため、使用する方がはるかに便利であることがわかりました。

2 番目のファイルを検索する必要がないため (骨の折れる作業です!)、後でその情報を変更または参照する必要がある場合に簡単です。

ただし、YML に有利な点は、注釈よりもはるかにクリーンで読みやすいことです。

于 2013-06-06T00:20:29.990 に答える