私のシステムには、いくつかのユーザー ロールがあるとしましょう: ROLE_ADMIN、ROLE_MODERATOR、ROLE_CUSTOMER_PERSON、ROLE_CUSOMER_COMPANY
また、登録フォームでは、ユーザーがどのロールを持ちたいか (ROLE_CUSTOMER_PERSON と ROLE_CUSOMER_COMPANY の間) を選択できるようにしたいと考えています。
そこでchoice
、値 1 と 2 を持つ type フィールドをフォーム クラスに追加しました。悪意のあるユーザーが他のフィールドを選択していないかどうかをチェックする制約を追加できます。しかし、これらの 1 と 2 をどうにかして ROLE_CUSTOMER_PERSON と ROLE_CUSOMER_COMPANY に変換し、addRole メソッドを使用してそれらを割り当てる必要があります。そうしないと、isValid フォーム関数が $roles 配列プロパティで失敗します。
それで、最初の検証 (1 または 2 の場合) とフォームの isValid メソッドが自動的に行われた後に、物事を「翻訳」できるメソッドはありますか?
Request オブジェクトを使用して手動で検証し、それをエンティティに設定して、フォームの残りの部分を検証するだけでよいことはわかっていますが、それは厄介なことであり、フォームを使用するたびにそれを行う必要があります。
何か案は?ありがとう。