Symfony 4 ошибка рендеринга формы, хотя у меня есть createview ()? - PullRequest
0 голосов
/ 02 сентября 2018

Я ДЕЙСТВИТЕЛЬНО новичок в Symfony 4, но я следовал руководству здесь , чтобы создать форму. Я следовал точно так же, как в видео, но по какой-то причине я получаю ошибку

Аргумент 1 передан Symfony \ Component \ Form \ FormRenderer :: renderBlock () должен быть экземпляром Symfony \ Component \ Form \ FormView, строка, заданная

и выделяет строку

'search_form' => $ form-> createView (),

Я дергаю себя за волосы, пытаясь понять это, так как все просто говорит, что мне нужно сделать createView () ... но я делаю это. Что мне не хватает? Код ниже:

PatientSearchController.php:

<?php

namespace App\Controller;

use App\Form\PatientSearchType;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\Routing\Annotation\Route;

class PatientSearchController extends AbstractController
{
    /**
     * @Route("/patient/search", name="patient_search")
     */
    public function index()
    {
        $form = $this->createForm(PatientSearchType::class);

        return $this->render('patient_search/index.html.twig', [
            'search_form' => $form->createView(),
        ]);
    }
}

patient_search / index.html.twig:

{% extends 'base.html.twig' %}

{% block body %}

    {{ form_start('search_form') }}
    {{ form_widget('search_form') }}
    {{ form_end('search_form') }}
{% endblock %}

PatientSearchType:

<?php

namespace App\Form;

use App\Entity\Patients;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;

class PatientSearchType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('PatientId')
            ->add('Address1')
            ->add('Address2')
            ->add('City')
            ->add('State')
            ->add('Phone1')
            ->add('Phone2')
            ->add('Email')
            ->add('DateOfBirth')
            ->add('InsuranceId')
            ->add('InsuranceNo')
        ;
    }

    public function configureOptions(OptionsResolver $resolver)
    {
        $resolver->setDefaults([
            'data_class' => Patients::class,
        ]);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...