2011-12-21 4 views
1

Я пытаюсь создать форму с помощью Symfony2, и когда я нажимаю на свою кнопку, чтобы отправить форму, я получаю метод POST с ошибкой 500 внутренних серверов.Ошибка POST 500: Внутренняя ошибка сервера

Вот код на моем контроллере для проверки формы:

if ($request->getMethod() == 'POST') 
    { 
     $form->bindRequest($request); 
     if ($form->isValid()) 
     { 

      $em = $this->getDoctrine()->getEntityManager();    
      $em->persist($group); 
      $em->flush(); 
      return $this->redirect($this->generateUrl('index')); 
     } 
    } 

По мнению:

<form action="{{ path('new') }}" method="post" {{ form_enctype(form) }}> 
<div class="actions"> 
      <input type="submit" value="OK"/> 
     </div> 

Но я ничего не получаю от формы. Кто-нибудь может мне помочь? Это действительно странная ошибка.

+0

Где задана '$ group'? Кроме того, что это за фактическая ошибка? Вы проверяли журналы своего сервера? –

+0

$ group - это мои сущности, я могу предоставить дополнительную информацию: 'Warning: array_replace_recursive(): Аргумент # 1 не является массивом в /home/public_html/vendor/symfony/src/Symfony/Component/Form/Form.php строке 583 ' –

+0

Вы отправляете какие-либо данные из своей формы? Если нет, попробуйте это. Если это не сработает, можете ли вы выполнить «var_dump» или какой-либо другой тест на '$ request-> request-> get ($ form-> getName()) и сообщить нам, что там? Он задыхается от метода 'bindRequest'. – Problematic

ответ

2

У меня также была проблема с обработкой формы.

Решение состоит в том, чтобы очистить кэш вручную и разогреть его снова.

PHP приложение кэш/консоли: четкие ==> does'nt работа для меня, так что я:
гт -rf приложение/кэш/DEV
PHP приложение/кэш консоли: прогрев

Это проблема!

Но в чем проблема? Я выясняю, что 500 внутренних ошибок сервера получают, потому что они пытаются загрузить кешированные значения маршрутизации в app/cache/dev/аннотации (в моем случае)

Подсказка: я использовал аннотацию для шаблонов и маршрутизации до контроллер. Чем я меняю это, и теперь я использую внешнюю маршрутизацию файлов ... И это была моя боль ... Я забыл очистить кэш вручную !!!

Смежные вопросы