私は現在、単純なことをするのに多くの時間を浪費しています。1つのフィールドに対してバリデータの制約を削除しました
特定のフィールドのsymfonyからフォームチェッカー/バリデータを削除します。
ビルダーの作業OKこのイベントリスナーを追加する:
->addEventListener(
FormEvents::POST_SUBMIT,
function (FormEvent $event) {
$event->stopPropagation();
},
900
)
しかし、それはすべてのフィールドのチェッカーを無効にする、と私は唯一のフィールドにしたいです。
'required' => false
と'csrf_protection' => false
はトリック
に任意のヘルプのおかげを行いません。
まず、お返事ありがとうございます。 名前再開など多くのフィールドを持つフォームがあります。 タグと呼ばれるエンティティフィールド。 ユーザはJavascriptを使用してフィールドに直接タグを追加できますが、symfonyのバリデータ は、実際にユーザが選択したエンティティではないため、値が正しくないと言います。 その文字列です。 私は、$ event-> stopPropagation();のような特定のフィールドのチェックをスキップするだけです。行う。 stopPropagationがすべてのフィールドに対して行うことを除いて、私はそれを1つの特定のフィールドに適用する方法を知りたいだけです。 あなたの返信にはもう一度お返事いただき、ありがとうございます。 – ArkanoydHD
あなたの問題は変圧器の制約ではありませんフォームはこのタイプを使うべきです[symfony book](http://symfony.com/doc/current/reference/forms/) types/collection.html) 'allow_add、prototype、entry_type'を注意深く見てください。' entry_type'はあなたのケースでは非常に重要です。symfonyに 'prototype'から来るデータをどのように変換するかを教えてくれるので、javascriptが必要ですプロトタイプに基づいて新しい要素を追加する;)良い読書先生:) – greenseed