2014-10-27 3 views
0

Почему моя symfony2 Form не отправляет? Если я нажму кнопку отправки, ничего не произойдет.Форма не отправляет - Symfony2

Я не хочу использовать форму по умолчанию {{form (form)}}. Работа по умолчанию работает. Ошибка, кажется, в TWIG?

{% extends '::base.html.twig' %} 
{% block stylesheets %} 
    {{ parent() }} 

    <link href="{{ asset('css/essensplan/show.css') }}" rel="stylesheet" /> 
    <!-- Latest compiled and minified CSS --> 
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css"> 

    <!-- Optional theme --> 
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css"> 


{% endblock %} 

{% block body -%} 

{{ form_start(form) }} 

    <h1>Speiseplan für KW {{ kw }}</h1> 

     <form action = "" method = "post"> 
      <input type="submit" name="back" value="<" class="btn-lg btn-success"/> 
      <input type="submit" name="next" value=">" class="btn-lg btn-success" /> 

      <input type="hidden" name="kw" value="{{ kw }}"> 
     </form> 

     <div class="container-fluid"> 

     <div class="tag col-xs-3"> 
       <div class="wochentag"> 
       Montag 
       </div> 
       <div class="hauptgericht"> 
         <div class="h"><strong>Hauptgericht</strong></div> 
         <div class=""> {{ form_widget(form.montagHauptgericht) }} 
          </div> 

       </div> 
       <div class="nachtisch"> 
         <div class="n"><strong>Nachtisch</strong></div> 
         <div class=""> {{ form_widget(form.montagNachtisch) }} </div> 
       </div> 
     </div> 


     </div> 
     {{ form_widget(form.Eintragen) }} 

     {{ form_end(form) }} 
{% endblock %} 


<?php 

namespace Chris\TestBundle\Controller; 

use Symfony\Component\HttpFoundation\Request; 
use Symfony\Bundle\FrameworkBundle\Controller\Controller; 

use Chris\TestBundle\Entity\KW; 
use Chris\TestBundle\Form\KWType; 
use Symfony\Component\HttpFoundation\Session\Session; 

/** 
* Admin controller. 
* 
*/ 
class AdminController extends Controller 
{ 

    /** 
    * Lists all KW entities. 
    * 
    */ 
    public function adminAction(Request $request) 
    { 
     $jahr = "2014"; 
     $kw = "43"; 

     // $_GET parameters 

     // Änderung 
     if ($request->get('next')){ 
      $kw = (intval($request->get('kw'))+1) . ""; 
      //var_dump($kw); 
     } 
     if ($request->get('back')){ 
      $kw = (intval($request->get('kw'))-1) . ""; 
      //var_dump($kw); 
     } 


     $form = $this->createFormBuilder() 
     ->add('montagHauptgericht', 'text') 
     ->add('montagNachtisch', 'text') 
     ->add('Eintragen', 'submit') 
     ->getForm(); 

     $form->handleRequest($request); 

      // data is an array with "name", "email", and "message" keys 
      $data = $form->getData(); 


     return $this->render('ChrisTestBundle:KW:admin.html.twig', array(
      'form' => $form->createView(), 'kw' => $kw 
     )); 
    } 

} 

Благодарим за помощь.

ответ

0

Похоже, что у вас есть вложенные формы в разметке (первое одно из них прутика в {{ form }} секунды в разметке. Согласно this или this вы не можете гнездовые form тег. Это может быть причиной, ваша форма не подают правильно

+0

спасибо! это работает :) –