EC-CUBEでの開発に避けては通れないフォームのカスタマイズ。バリデーションやエラー対策、みなさんどのようにデバッグしていますか?
Symfonyのフォームは慣れると非常に高速な開発が可能です。今回は弊社のデバッグ方法を2つご紹介します。
Symfonyツールバーを利用する方法
デバッグモードでサイトを表示していれば、画面下部にSymfonyツールバーが表示されています。フォームにエラーがあれば自動で検知し知らせてくれる優れものです。
アイコンをクリックするとさらに詳細な情報を確認することができます。どの要素にエラーがあるかを教えてくれるのでデバッグが簡単になります。
dump()する方法
開発サーバーであればこちらで画面上にダンプしてしまっても良いでしょう。
この時、getErrorsの引数にtrueを渡してやることが重要です。
子要素のエラーを取得するかどうかを指定するパラメーターです。
if (!$form->isValid()) { dump($form->getErrors(true)); // trueにすると子要素のエラーも出力 }
いかがでしたでしょうか。フォームを制するものはEC-CUBE3を制する言って間違いないと思います。
ぜひSymfonyのFormコンポーネントを使いこなして自由にカスタマイズしてみてくださいね。
EC-CUBEに関するお問い合わせ
[重要]現在公式にセキュリティサポートが切れていないPHPは8.1以上、MySQLは8.0以上で、対応しているEC-CUBEバージョンは4.2以上です。古いEC-CUBEを使っている方は適切なタイミングでバージョンアップをご検討ください。