wolverine777
@wolverine777

Как передавать данные на одну и ту же страницу (без дупликации страниц)?

Привет,

Я имею следующую картину:

Хочу добавить новую страницу на сайт - для этого н апервом этапе надо ввести текст страницы + название.
Далее, после нажатия кнопки "сохранить" меня переносит на следующую страницу где в соотв. полях появляется название и текст (который только что ввел).
Далее, на этой странице я могу этот текст/название изменить и после этого сохранить.

Проблема заключается в том что каждый раз как я попадаю на страницу "создать новую страницу" или "изменить уже созданную страницу" symfony мне создает каждый раз новую страницу вместо того чтобы перезаписать информацию на старую...

Я попробовал не делать flush() после первичного создания, потом через Request $request передать данные в контроллер который отвечает за "изменить страницу" но в дампе названия и текста лишь null.

/**
     * @Route("site/page/new/{id}", name="add_new_page_site")
     */
    public function newPageTitle(Request $request,$id)

    {

        dump($id); /*die();*/

        $em = $this->getDoctrine()->getManager();

        $page = new geodePage();

        $form = $this->createForm(NewPageType::class, $page);

        $form->handleRequest($request);

        if($form->isSubmitted() and $form->isValid()) {

            $page->setIdSite($id);

            dump($page); /*die();*/
            $em->persist($page);
//            $em->flush();


            return $this->redirectToRoute('modif_page_site', [
                'id' => $page->getIdPage(),
                'idsite' => $id,
                'pageinfo'=>$page
            ]);


        }

        return $this->render('geode/site/pageSite.html.twig', [

            'post_form' => $form->createView(),
            'id' => $id,


        ]);

    }


    /**
     * @Route("site/page/edit/id_page/{id}", name="modif_page_site")
     */
    public function modif_page($id, Request $request){

        $titre = $request->query->get('titre');
        $texte = $request->query->get('texte');


        dump($titre, $texte); die;
  • Вопрос задан
  • 67 просмотров
Пригласить эксперта
Ответы на вопрос 1
Matmode
@Matmode
PHP/Symfony Developer
В методе modif_page вы должны загружать объект из базы по id и брать данные из него, а не из запроса
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы