Я создаю форму для изменения моих данных, но когда я хочу получить доступ к своей форме, я получаю эту ошибку:
Не удалось загрузить тип «App \ Entity \ Clients»: класс не реализует
"Symfony \ Component \ Form \ FormTypeInterface".
ClientsEntity:
<?php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass="App\Repository\ClientsRepository")
* @ORM\Table(name="app_clients")
*/
class Clients
{
/**
* @var int
*
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
private $id;
/**
* @var string
*
* * @ORM\Column(type="string", length=180, unique=true)
*/
private $name;
public function getId(): ?int
{
return $this->id;
}
public function setName(string $name): void
{
$this->name = $name;
}
public function getName(): ?string
{
return $this->name;
}
public function __toString(): string
{
return $this->name;
}
}
ClientType:
<?php
namespace App\Form;
use App\Entity\Clients;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
class ClientType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('name', null, array(
'label' => 'Domaine du client',
'required' => true,
))
;
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'data_class' => Clients::class,
'name' => null
]);
}
}
ClientsController:
/**
* @Route("/edit/{id}", name="support_admin_client_edit", methods={"GET","POST"})
*/
public function edit(Request $request, Clients $clients): Response
{
$form = $this->createForm(ClientType::class, $clients);
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
$this->getDoctrine()->getManager()->flush();
return $this->redirectToRoute('support_admin_client_index', [
'id' => $clients->getId(),
]);
}
return $this->render('admin/ticketing/client/edit.html.twig', [
'clients' => $clients,
'form' => $form->createView(),
]);
}
Моя форма реализует AbstractType, поэтому я не вижу, откуда появилась моя ошибка.
Вы знаете, откуда это сообщение?