Сел изучать симфони. Делаю простую страницу со встроенной формой.
Есть контроллер для страницы.
Есть шаблон страницы.
Есть шаблон формы.
Я сохраняю результат работы createForm в переменную $form
$form = $this->createForm(SendForm::class);
и добавляю в шаблон страницы так
return $this->render(
'account/account.html.twig',
array(
'user_name' => $userName,
'send_form' =>$form // Передаю в шаблон
)
);
Получаю ошибку
Fatal Error: Object of class Symfony\Component\Form\Form could not be converted to string
\
Далее я пытался сперва рендерить форму в переменную.
$form = $this->render(
'account/send_form.html.twig',
array('form' => $form->createView())
);
И получал escaped html формы.
Как правильно отрендерить форму для того чтобы вставит в шаблон страницы?
Код контроллера:
<?php
namespace AppBundle\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use AppBundle\Form\SendForm;
class AccountController extends Controller {
/**
* @Route("/account", name="account")
*/
public function indexAction(Request $request)
{
$userName = "Имя";
//Создаю форму
$form = $this->createForm(SendForm::class);
return $this->render(
'account/account.html.twig',
array(
'user_name' => $userName,
'send_form' =>$form // Передаю в шаблон
)
);
}
}
?>