Home | Symfony2Doc »リファレンスドキュメント »Form Type リファレンス »hidden フィールドタイプ

ご注意

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

Note

  • 対象バージョン:2.3 (2.1以降)
  • 翻訳更新日:2013/11/23

hidden フィールドタイプ

hidden タイプ は hidden の input フィールドを意味しています。

対応するタグ input hidden フィールド
上書きされた オプション
継承された オプション
親タイプ form
クラス HiddenType

上書きされたオプション

required

デフォルト: false

Hiddenフィールドは必須にできません。

error_bubbling

デフォルト: true

ルートのフォームにエラーを渡してください。そうしないとエラーは見えないでしょう。

継承されたオプション

以下のオプションは form タイプを継承しています:

data

データ型: mixed デフォルト: 対応するオブジェクトのフィールド(一つであれば)

フォームを作成したとき、各フィールドに表示する初期値は、フォームのドメインオブジェクトの対応するプロパティの値です(オブジェクトがフォームにバインドされている場合)。もしフォーム、または、単に個々のフィールドの初期値を上書きしたい場合は、data オプションで設定することが出来ます。:

$builder->add('token', 'hidden', array(
    'data' => 'abcdef',
));

Note

フォームのフィールドのデフォルト値は、直接データ構造(例えば、エンティティまたは配列)から取得されます。 data オプションはこのデフォルト値を上書きします。

property_path

データ型: any デフォルト: the field's name

フィールドには、デフォルトで、フォームのドメインオブジェクトのプロパティの値を表示します。フォームの送信時に、送信された値はオブジェクトに書き込まれます。

フィールドの読み取りと書き込みのプロパティを上書きしたい場合は、 property_path オプションを設定することでできます。そのデフォルト値は、フィールドの名前です。

オブジェクトの読み込み、書き込み時にそのフィールドを無視したい場合は、property_path オプションを false にすることで出来ます。しかし、その目的での property_path の使用は推奨されません。 mapped オプションを使用する必要があります。

mapped

データ型: boolean

オブジェクトを読み込んでいるまたは書き込んでいる間、フィールドが無視されるようにしたい場合は、 mapped オプションを false にしてください。

error_mapping

データ型: array デフォルト: empty

このオプションはバリデーションエラーの対象を編集することができます。

matchingCityAndZipCode という名前のメソッドを持っているとして、それが city および zip code が一致するかの検証をするとします。しかし残念なことに、 “matchingCityAndZipCode” フィールドがフォームに無いため、 Symfony ができるのはフォームの上部にエラーを表示することです。

カスタマイズされたエラーマッピングを使うと、city フィールドの上にエラーを表示するように、より上手にエラーをマップできます。:

public function setDefaultOptions(OptionsResolverInterface $resolver)
{
    $resolver->setDefaults(array(
        'error_mapping' => array(
            'matchingCityAndZipCode' => 'city',
        ),
    ));
}

こちらが左側、右側のマッピングするルールです:

  • 左側はプロパティパスを有します。
  • クラスのプロパティまたはメソッドで違反が生成された場合、そのパスは単に “propertyName” です。
  • array または ArrayAccess オブジェクトで違反が生成された場合、プロパティパスは [indexName] です。
  • ドットでプロパティを分離し、それらを連結して、ネストされたプロパティパスを作成することができます。たとえば addresses[work].matchingCityAndZipCode のように。
  • 左側のエラーマッピングは単一のドット . も認められます。それはフィールド自体をさしています。フィールドに追加されたエラーはネストされたフィールドの代わりに付与されたことを意味します。
  • 右側は単にフォームのフィールド名を有します。
blog comments powered by Disqus