私はイベントの開始日時を入力する必要があるSymfony2フォームを作成しようとしています。これはDateTime形式のプロパティとして保存されます。現在、時間は24時間形式のドロップダウンボックスを使用して入力されます。私は12時間形式に変更しようとしています。 this postによると、Symfony TimeTypeは12時間形式をサポートしていません。この問題を回避する方法の1つは、時間を入力するためにJQueryプラグインを使用することですが、これを避けようとしています。これを行う最も簡単な方法は、上記のpostのjarofgreenによるコメントに示されています。ここで、彼はTimeType.phpのSymfonyベンダーコード用の小さなパッチを提案しています。私はこの変更を実装しようとしました。問題はベンダーコードを変更せずにこれを行う必要があることです。代わりに、hereのように、TimeTypeの拡張機能を作成することにしました。Symfony2フォームの時間を12時間形式で入力する方法は?
vendor/symfony/symfony/src/Symfony/Component/Form/Extension/Core/Type/TimeType.php
にベンダーコードからTimeType.phpをコピーし、必要な変更を加えて、src/AppBundle/Form/Type
のMyTimeTypeとして保存しました。問題は、私が変更しようとしているプロパティがTimeTypeではなく、DateTimeType形式に属していることです。私の知る限り、DateTimeTypeはDateTimeとTimeTypeを使ってDateTimeオブジェクトを作成します。私の質問は、DateTimeオブジェクトの作成にTimeTypeではなくMyTimeTypeを使用するように、私はDateTimeTypeにどのような変更を加える必要があるのでしょうか?