0

メインページでコメントを送信してから、このページにリダイレクトしたい。これは私の行動です:

public function submitcommentAction(Request $request)
{
    $user=$this->get('security.context')->getToken()->getUser();
       $uid=$user->getId();

    $comment=new comment();

    //$comment->setCafe();

    $form=$this->createFormBuilder($comment)
            ->add('cafe','hidden')
            ->add('description','textarea')
            ->getForm();
    if($request->getMethod()=='POST')
    {
        $form->bind($request);

        if($form->isValid())
        {
            $comment->setCafe($form['cafe']->getData());
            $comment->setUser($uid);
            $comment->setDescription($form['description']->getData());
            $em=$this->getDoctrine()->getEntityManager();
            $em->persist($comment);
            $em->flush();
              // return $this->redirect($this->generateUrl('showcofe'));   
            var_dump($em);
    exit();

        }
    }

                    $r='error';
        return $this->      render('CafeManagementBundle:Default:simple.html.twig',array('r'=>$r));

}

これは私の小枝です:

    <div class="new-comment">
      <div class="new-comment-text"> :your comment
        <div>
          <form id="comment-form" method="post" action={{path('subcomment')}}" {{form_enctype(form1)}}">
            <ul class="smallbuttons">

                <input type="hidden" id="form_cafe" name="form[cafe]" value="{{cafe.id}}" />
                  {{form_widget(form1.description)}}
                <div style="display:none">{{ form_rest(form1) }}</div>

         <p><a id="clickbotton1"     href="javascript:document.getElementById('form1').submit()" class="btn_smallorange edit2">submit</a></p> 
            </ul>
          </form>
        </div>
      </div>
    </div>

非表示フィールド(カフェ)をコントローラーに渡す方法がわかりません。さらに、私のコントローラーが正しいかどうか教えてください。

4

0 に答える 0