Я пытаюсь настроить бэкэнд EasyAdmin с Symfony 4.
Однако, когда я пытаюсь редактировать сообщение, я получаю:
Конфигурация "Объект App \ Entity \ Cat "недоступен (этот объект используется в качестве цели для поля автозаполнения" cat ").
Я пробовал с другим объектом (пользователем), и он отлично работает.
Ребята, вы хоть представляете, что это за конфигурация и / или как сделать ее доступной?Спасибо.
Это фактическая конфигурация:
formats:
blabla
entities:
User:
class: App\Entity\User
list:
fields: ['username', 'roles', 'email', 'registration_datetime', 'status']
Post:
class: App\Entity\Post
list:
fields: blabla
edit:
fields:
- {type: 'group', columns: 9}
- {property: 'title', type_options: { block_name: 'custom_title' }}
- {property: 'body', type: 'fos_ckeditor'}
- {type: 'group', columns: 3}
- {property: 'cat', type: 'easyadmin_autocomplete', type_options: {class: 'App\Entity\Cat'}}
- {property: 'subcat', type: 'easyadmin_autocomplete', type_options: {class: 'App\Entity\Subcat'}}
- 'tile'
- 'place'
site_name: 'ShadowTech'
user:
name_property_path: 'username'
Ниже находится Cat
объект:
<?php
namespace App\Entity;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass="App\Repository\CatRepository")
*/
class Cat
{
/**
* @ORM\Id()
* @ORM\GeneratedValue()
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="string", length=255)
*/
private $name;
/**
* @ORM\OneToMany(targetEntity="App\Entity\Post", mappedBy="cat")
*/
private $posts;
/**
* @ORM\Column(type="string", length=100)
*/
private $readable_name;
public function __construct()
{
$this->posts = new ArrayCollection();
}
public function getId(): ?int
{
return $this->id;
}
public function getName(): ?string
{
return $this->name;
}
public function setName(string $name): self
{
$this->name = $name;
return $this;
}
public function __toString()
{
return $this->getReadableName();
}
/**
* @return Collection|Post[]
*/
public function getPosts(): Collection
{
return $this->posts;
}
public function addPost(Post $post): self
{
if (!$this->posts->contains($post)) {
$this->posts[] = $post;
$post->setCat($this);
}
return $this;
}
public function removePost(Post $post): self
{
if ($this->posts->contains($post)) {
$this->posts->removeElement($post);
// set the owning side to null (unless already changed)
if ($post->getCat() === $this) {
$post->setCat(null);
}
}
return $this;
}
public function getReadableName(): ?string
{
return $this->readable_name;
}
public function setReadableName(string $readable_name): self
{
$this->readable_name = $readable_name;
return $this;
}
}