У меня возникли проблемы с попыткой сохранить данные с помощью доктрины. Я не понимаю, почему, но я могу получить данные из базы данных, но я не могу обновлять/вставлять/удалять.Doctrine (Silex) не может сохранить данные, нет ошибки
Я использую EntityManager с функциями perist() и заподлицо().
Я искал в google, где проблема могла быть, но я ничего не мог найти.
function editPage($id, Request $request, Application $app) {
$data = array('id' => 0);
if ($id != 0) { // existing page
$page = $app['em']->find('BLOG\\Models\\Page', $id); // get the page
$data = array(
'titre' => $page->getTitle(),
'slug' => $page->getSlug(),
'contenu' => $page->getContent(),
'id' => $id
);
}
$form = $app['form.factory']->createBuilder(FormType::class, $data)
->setAction($app['url_generator']->generate('adminPageEdit', array('id' => $id)))
->setMethod('POST')
->add('titre')
->add('slug')
->add('contenu', 'textarea')
->add('id', 'hidden')
->add('Envoyer', 'submit')
->getForm();
$form->handleRequest($request);
if ($form->isValid()) {
$data = $form->getData();
if($id != 0) { // existing page
$page->setTitle($data['titre']);
$page->setSlug($data['slug']);
$page->setContent($data['contenu']);
}
else {
$page = new Page(
$data['titre'],
$data['slug'],
$data['contenu']
);
}
$app['em']->persist($page);
$app['em']->flush();
$app['session']->getFlashBag()->add('flash', 'Page validée!');
return $app->redirect($app['url_generator']->generate('adminPagesList'));
}
return $app['twig']->render('admin/editPage.twig', array('form' => $form->createView()));
}
Когда я пытаюсь использовать форму, нет абсолютно никаких изменений, но я получаю мгновенное сообщение, даже если бы я имел умереть(); перед перенаправлением.
Я надеюсь, что кто-то может помочь мне найти проблему.
С уважением.