`"Ключ "0" в объекте с ArrayAccess класса не существует` ошибка после смены компьютера

Я сменил компьютер и попытался импортировать проект на новый компьютер.

Я использую Symfony (6 на моем старом компьютере и 7 на новом). Я использовал Doctrine для локального воссоздания базы данных перед импортом всех данных. В проекте у Книги есть Авторы и Редактор.

Почему я получаю ошибку "Key "0" in object with ArrayAccess of class "Doctrine\ORM\PersistentCollection" does not exist.?

Несмотря на то, что он загружает все данные, коллекция авторов пуста, а для редактора у меня есть:

-lazyObjectState: Symfony\Component\VarExporter\Internal\LazyObjectState {#1038 ▼
        +status: UNINITIALIZED_FULL

Мои отношения нанесены на карту. На моем старом ПК такой проблемы нет.

Сущности:

<?php

namespace App\Entity;

use App\Repository\LibrisRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\DBAL\Types\Types;
use Doctrine\ORM\Mapping as ORM;

#[ORM\Entity(repositoryClass: LibrisRepository::class)]
#[ORM\Table("exlibris")]
class Libris implements \JsonSerializable
{
    #[ORM\Id]
    #[ORM\GeneratedValue]
    #[ORM\Column]
    private ?int $id = null;

    [...]

    #[ORM\ManyToOne(inversedBy: 'libris')]
    #[ORM\JoinColumn(nullable: false)]
    private ?Editeur $editeur = null;

    #[ORM\ManyToMany(targetEntity: Auteur::class, inversedBy: 'libris')]
    private Collection $auteurs;

    #[ORM\Column(length: 100, nullable: true)]
    private ?string $xl_img = null;

    #[ORM\Column(length: 50)]
    private ?string $xl_livre = null; /*nom du Libris*/

    #[ORM\OneToMany(mappedBy: 'libris', targetEntity: BDConcern::class)]
    private Collection $bdConcernes;
<?php

namespace App\Entity;

use App\Repository\AuteurRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;

#[ORM\Entity(repositoryClass: AuteurRepository::class)]
class Auteur implements \JsonSerializable
{
    #[ORM\Id]
    #[ORM\GeneratedValue]
    #[ORM\Column]
    private ?int $id = null;

    #[ORM\Column(length: 30)]
    private ?string $nom = null;

    #[ORM\Column(length: 30, nullable: true)]
    private ?string $prenom = null;

    #[ORM\ManyToMany(targetEntity: Libris::class, mappedBy: 'auteurs')]
    private Collection $libris;

Получил ошибку здесь:

    {% for l in listL %}
            [...]
                {{ l.auteurs[0].prenom }} {{ l.auteurs[0].nom }}</p>
            [...]
    {% endfor %}

дд из спискаL

AccueilController:

$listL = $libRepo->findAccRecent();

libRepo:

public function findAccRecent(): array
   {
        $etats = [1, 2];

    return $this->createQueryBuilder('l')
           ->andWhere('l.xl_etat IN (:etat)')
           ->setParameter('etat', $etats)
           ->orderBy('l.xl_date', 'DESC')
           ->setMaxResults(18)
           ->getQuery()
           ->getResult();
   }

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Symfony Station Communiqué - 17 февраля 2023 г
Symfony Station Communiqué - 17 февраля 2023 г
Это коммюнике первоначально появилось на Symfony Station , вашем источнике передовых новостей Symfony, PHP и кибербезопасности.
Управление ответами api для исключений на Symfony с помощью KernelEvents
Управление ответами api для исключений на Symfony с помощью KernelEvents
Много раз при создании api нам нужно возвращать клиентам разные ответы в зависимости от возникшего исключения.
0
0
92
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Выяснилось, что проблема заключалась не в добавлении всех объединений в репозиторий. Не знаю, почему это работало раньше.

Другие вопросы по теме