いくつかのウィジェットを含むフォーム タイプ A があり、クラス C1 にマップされています。このクラスにマップされていない (つまり、別のクラス C2 にマップされている) この形式の新しいウィジェットが必要です。そこで、新しいフォーム タイプ B を作成しました。この新しいフォーム タイプ B は、フォーム タイプ A に含まれています。
フォーム タイプ B:
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('join_event', 'date', array(
'label' => 'employee.form.join_event.label',
'required' => true,
'widget' => 'single_text',
'attr' => array(
'data-date-format' => 'MM-DD-YYYY'
)
));
}
FormType B を含む FormType A:
$builder->add('event', new FormTypeB(), array(
'label' => false,
'mapped' => false
));
フォームの表示は期待どおりですが、送信時に「この値は無効です」というメッセージとともに検証エラーが発生します。