Ankündigung

Einklappen
Keine Ankündigung bisher.

[Doctine] One-To-Many ist empty

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Doctine] One-To-Many ist empty

    Hello,
    ich stehe auf dem Schlauch ...
    Ich habe eine Relation: Ein Kapitel besteht aus vielen Seiten.

    Ich kann nur einem Kapitel Seiten zu weisen und dies auch in die Datenbank schreiben – Nichts besonderes, 100te Male gemacht.
    Die Seiten haben in der entsprechenden Spalte dann auch die Referenz zum Kapitel.

    $page->getChapter() funktioniert damit problemlos.

    Wenn ich aber versuche über das Kapitel an die Seiten zu kommen, erhalte ich jedes Mal eine leere Antwort.
    $chapter->getPages() schlägt somit fehl.

    Ich komme und komme einfach nicht darauf, wo mein Problem liegt...
    Die Doku 5 Mal angeschaut – Eigentlich sollte das so passen.


    Kapitel:
    PHP-Code:
    class Chapter
    {
      
    /**
        * @ORM\Id()
         * @ORM\GeneratedValue()
         * @ORM\Column(type="integer")
         */
        
    private $id;

        
    /**
         * @ORM\OneToMany(targetEntity="\App\Entity\Page", mappedBy="chapter", cascade={"persist", "remove"})
         * @ORM\OrderBy({"sortOrder" = "ASC", "id" = "ASC"})
         */
        
    private $pages;




    Seite:
    PHP-Code:
    class Page
    {
      
    /**
        * @ORM\Id()
         * @ORM\GeneratedValue()
         * @ORM\Column(type="integer")
         */
        
    private $id;

        
    /**
         * @ORM\ManyToOne(targetEntity="\App\Entity\Chapter", inversedBy="pages", cascade={"persist"})
         * @ORM\JoinColumn(name="chapter_id", referencedColumnName="id")
         */
        
    private $chapter;
    ​​​​​​​

  • #2
    Wie sieht dein Constructor aus und wie sehen die generierten Tabellen aus? Stehen die Daten dort korrekt drin mit der entsprechenden Referenz?
    Gibt der Doctrine Command "doctrine orm:validate-schema" eine Meldung zurück?

    Kommentar


    • #3
      Die Datenbank an sich sah sauber aus, ja.
      Referenzen waren sauber, alle Schlüssel generiert.
      In PhpMyAdmin war es möglich über die Referenz von der Page direkt zum richtigen Kapitel zu springen.


      Ich habe die Datenbank irgendwann nochmals gedroppt und neu generieren lassen – Seitdem läuft es.

      Validierung der Datenbank ist sauber.

      Auch wenn es jetzt funktioniert, es etwas unbefriedigend nicht zu wissen, wo das Problem lag.

      Kapitel:
      PHP-Code:
      public function __construct()
      {
          
      $this->pages = new ArrayCollection();

      Kommentar


      • #4
        Ich tippe darauf, dass du den Metadaten Cache nicht geleert hast.

        Kommentar

        Lädt...
        X