Home | Symfony2Doc »リファレンスドキュメント »バリデータリファレンス »False

このページのコンテンツ

前のドキュメント

True

次のドキュメント

Type

ソース



クイックリンク


コメントリスト

Powered by Disqus

ご質問や翻訳不備等お気軽にコメントください。


ご注意

Symfony2日本語翻訳ドキュメントは内容が古くなっております。公式サイトの英語ドキュメントを参照してください。

False

Note

  • 対象バージョン:2.3
  • 翻訳更新日:2013/6/9

値が false であることを検証します。厳密には、値が false、整数の 0、文字列の “0” であることを検証します。 True も参照してください。

適用先 プロパティまたはメソッド
オプション
クラス False
バリデーター FalseValidator

基本的な使い方

False 制約はプロパティまたは “getter” メソッドに適用できます。”getter” に対して適用するのがよくあるケースです。たとえば、state プロパティの値が invalidStates 配列に存在しないことを保証したいとします。最初に次のように “getter” メソッドを作ります。

protected $state;

protected $invalidStates = array();

public function isStateInvalid()
{
    return in_array($this->state, $this->invalidStates);
}

ここでは、対象オブジェクトの isStateInvalid メソッドが false を返した時にのみ有効であるとします。

  • YAML
    # src/BlogBundle/Resources/config/validation.yml
    Acme\BlogBundle\Entity\Author
        getters:
            stateInvalid:
                - "False":
                    message: You've entered an invalid state.
    
  • Annotations
    // src/Acme/BlogBundle/Entity/Author.php
    namespace Acme\BlogBundle\Entity;
    
    use Symfony\Component\Validator\Constraints as Assert;
    
    class Author
    {
        /**
         * @Assert\False(
         *     message = "You've entered an invalid state."
         * )
         */
         public function isStateInvalid()
         {
            // ...
         }
    }
    
  • XML
    <!-- src/Acme/BlogBundle/Resources/config/validation.xml -->
    <class name="Acme\BlogBundle\Entity\Author">
        <getter property="stateInvalid">
            <constraint name="False">
                <option name="message">You've entered an invalid state.</option>
            </constraint>
        </getter>
    </class>
    
  • PHP
    // src/Acme/BlogBundle/Entity/Author.php
    namespace Acme\BlogBundle\Entity;
    
    use Symfony\Component\Validator\Mapping\ClassMetadata;
    use Symfony\Component\Validator\Constraints as Assert;
    
    class Author
    {
        public static function loadValidatorMetadata(ClassMetadata $metadata)
        {
            $metadata->addGetterConstraint('stateInvalid', new Assert\False());
        }
    }
    

Caution

YAML を使う場合、Falseを二重引用符で囲う ("False") ことに注意してください。 これを忘れると、単なるブール値として扱われてしまいます。

オプション

message

: string デフォルト: This value should be false

検証対象のデータが false ではない場合に、このメッセージが表示されます。

blog comments powered by Disqus