У меня проблема с переопределением editAction администратора Sonata в Symfony 4.
Моя проблема в том, что у меня есть этот интерфейс для редактирования сообщений, как вы можете видеть, это два изображения:
Каждый раз, когда администратор меняет форматировщик контента, он меняется, и изменения сохраняются в mysql
но когда вы пытаетесь отредактировать сообщение опять же, администратор всегда получает «текст», выбранный по умолчанию.
Я хочу, чтобы выбранной по умолчанию опцией была та, которая сохранена в MySQL.
Например, если администратор изменится его в rawhtml, в следующий раз, когда он захочет отредактировать это сообщение, он должен найти rawhtml, выбранный по умолчанию (а не текст, как на изображении).
он по-прежнему не принимает выбранное значение по умолчанию.
Есть ли способ заставить его принимать реальное значение из MySQL в качестве «данных»?
Я не могу найти, где мне следует отредактировать форму, чтобы взять из объекта выбранное по умолчанию значение. Пожалуйста, если вы можете мне помочь с этим, я буду очень рад. Я не знаком с пакетом Sonata и формами управления.
У меня проблема с переопределением editAction администратора Sonata в Symfony 4. Моя проблема в том, что у меня есть этот интерфейс для редактирования сообщений, как вы можете видеть, это два изображения: Каждый раз, когда администратор меняет форматировщик контента, он меняется, и изменения сохраняются в mysql
но когда вы пытаетесь отредактировать сообщение опять же, администратор всегда получает «текст», выбранный по умолчанию.
Я хочу, чтобы выбранной по умолчанию опцией была та, которая сохранена в MySQL. Например, если администратор изменится его в rawhtml, в следующий раз, когда он захочет отредактировать это сообщение, он должен найти rawhtml, выбранный по умолчанию (а не текст, как на изображении).
Это метод редактирования действия Sonata:
[code]public function editAction($id = null) { $request = $this->getRequest(); // the key used to lookup the template $templateKey = 'edit';
/** @var $form Form */ $form = $this->admin->getForm(); $form->setData($existingObject); $form->handleRequest($request); if ($form->isSubmitted()) { $isFormValid = $form->isValid();
// persist if the form was valid and if in preview mode the preview was approved if ($isFormValid && (!$this->isInPreviewMode() || $this->isPreviewApproved())) { $submittedObject = $form->getData(); $this->admin->setSubject($submittedObject);
// show an error message if the form failed validation if (!$isFormValid) { if (!$this->isXmlHttpRequest()) { $this->addFlash( 'sonata_flash_error', $this->trans( 'flash_edit_error', ['%name%' => $this->escapeHtml($this->admin->toString($existingObject))], 'SonataAdminBundle' ) ); } } elseif ($this->isPreviewRequested()) { // enable the preview template if the form was valid and preview was requested $templateKey = 'preview'; $this->admin->getShow(); } }
$formView = $form->createView(); // set the theme for the current Admin Form $this->setFormTheme($formView, $this->admin->getFormTheme());
// NEXT_MAJOR: Remove this line and use commented line below it instead $template = $this->admin->getTemplate($templateKey); // $template = $this->templateRegistry->getTemplate($templateKey);
он по-прежнему не принимает выбранное значение по умолчанию. Есть ли способ заставить его принимать реальное значение из MySQL в качестве «данных»? Я не могу найти, где мне следует отредактировать форму, чтобы взять из объекта выбранное по умолчанию значение. Пожалуйста, если вы можете мне помочь с этим, я буду очень рад. Я не знаком с пакетом Sonata и формами управления.
{% блокировать sonata_javascript_pool %} {% для javascript в sonata_config.getOption('javascripts', []) %} {% конец для %} {% конечный блок %} {# локализовать момент #} {% set localeForMoment =...
У меня есть сущность (многие ко многим), которая соответствует сущности моего продукта.
Мне нужно подключиться к изображениям с помощью представления, но
у меня возникла ошибка: невозможно преобразовать в _string !!! enter code here