1

私からの次の(簡単な)質問:

  $user = new User();
  $user->setEventid(2);
  $user->setT(new \DateTime('now'));

  $em = $this->getDoctrine()->getManager();
  $em->persist($user);
  $em->flush();

  $form = $this->createFormBuilder($user)
    ->add('email', 'email')
    ->add('terms', 'checkbox', array(
          'label'     => 'Read terms?',
          'required'  => true))
    ->getForm();

これは私のコードです。メールはユーザーの所有物であり、条件ではありません。ユーザーにメールを保存して条件チェックボックスをオンにしてもらいたいのですが、チェックボックスをオンにしない場合は、フォームを送信できない場合は、メールを保存する必要があります。

私の言っていることが分かるよね?私はこれを達成するのは非常に簡単だと確信しています;)

2番目の質問:jqueryでさらに処理するために、レンダリングされたfromタグにid属性を与えるにはどうすればよいですか?

4

2 に答える 2

2

エンティティに存在しないフィールドをフォームに追加するには、次を使用します。

->add('terms', 'checkbox', array(
    'label'         => 'Read terms?',
    'required'      => true,
    'mapped'        => false, // this works since Symfony 2.1
    'property_path' => false, // this works since Symfony 2.0
))

symfonyは各フォーム要素のIDを生成します。レンダリングされたページソースを開いて、必要な要素のIDを確認するだけです。

于 2012-11-01T06:34:45.253 に答える
0

エンティティに「用語」フィールドがない場合、保存されません。2番目の質問では、小枝のフォームにIDを設定するのは非常に簡単です。簡単に作成してください。

{{ form_label(form.name, 'Your Name', { 'attr': {'id': 'foo'} }) }}
于 2012-10-31T22:43:46.217 に答える