1

このトピックに関する Web のさまざまなフォーラムに、すでにかなりの数の投稿があることは知っています。ただし、問題は非常に単純に見えますが、実際には解決策はありませんでした。

symfony2フォームでラジオボタンを事前に選択したい:

私のエンティティ:

namespace Helloworld\CoreBundle\Entity;

class User {
   ...

   /**
    * @var string
    *
    * @ORM\Column(name="gender", type="string", length=6)
    * @Assert\Choice(choices = {"male","female"}, multiple = false, message = "You must choose a valid gender.")
    */
   protected gender;

   ...
}

(ゲッターとセッターがあります)

私のphpコード:

$user = new User();
$user->setGender('male');

$form = $this->createFormBuilder($user)
    ->add('gender', 'choice', array(
        'choices' => array(
          'male' => 'Male',
          'female' => 'Female'
        ),
        'multiple' => false,
        'expanded' => true,
        'required' => true,
    ))
    ->getForm();

残念ながら、デフォルトではラジオ ボタンが選択されていません。

誰でも助けることができますか?お願いします?

4

4 に答える 4

1

フォームを作成する前にエンティティを永続化(および/またはフラッシュ?)する必要があると思います。そのため、エンティティにはIDなどがあります(ラジオボタンを事前に選択するのはひどい方法です)

于 2013-03-13T14:46:47.277 に答える