0

このコードを使用すると、問題なく新しいオブジェクトを作成できます。

 ->add('user', 'entity', array(
                 'class' => 'Acme\Entity\User',
                 'query_builder' => function(EntityRepository $er) use ($options){
                    return $er->createQueryBuilder('u')->orderBy('u.name', 'ASC');}
                ))

しかし、次のようなパラメータを設定すると:

'query_builder' => function(EntityRepository $er) use ($options) {
                            return $er->createQueryBuilder('u') 
->where('u.id = :id')
->setParameter('id',$options['id'])
->orderBy('u.name', 'ASC');}
                ))

次に、選択ボックスでオプションを正しく表示できますが、フォームを送信すると、ユーザーオブジェクトの値が NULL になります。何か不足していますか?

4

1 に答える 1

1

$options['id']文字列かもしれません。これを試して:

->setParameter('id',intval($options['id']))
于 2012-08-23T12:57:46.733 に答える