Ergebnis 1 bis 7 von 7

Thema: C 3.0.4, Merger2: Call to a member function getRelated() on a non-object

  1. #1
    Contao-Nutzer
    Registriert seit
    20.02.2012.
    Beiträge
    55

    Standard C 3.0.4, Merger2: Call to a member function getRelated() on a non-object

    Ich habe eine Struktur, die in Abhängigkeit von pageInPath(...) verschiedene Module zur Anzeige bringen soll. Sie funktioniert nur solange einwandfrei, bis ich ein Modul vom Typ "Nachrichtenarchiv-Menü" (z.B. Archivformat Monat) hinzufüge.

    Dann gibt es den Fehler:

    "Fatal error: Call to a member function getRelated() on a non-object in ./modules/news/modules/ModuleNewsMenu.php on line 176

    Ich freue mich über jede Hilfe.
    Geändert von mPunkt (20.02.2013 um 08:14 Uhr)

  2. #2
    Contao-Urgestein
    Registriert seit
    29.10.2009.
    Ort
    Magdeburg
    Beiträge
    2.020
    Partner-ID
    626
    User beschenken
    Wunschliste

    Standard

    Bin gerade auf das gleiche Problem gestoßen. Problematisch sind die Zeilen ab 368 in der ModuleMerger2. Da manche Module ein Model erwarten, aber hier ein Datenbank-Result erstellt wird, gibt es Probleme. Hab folgende Änderung gemacht und es funktioniert:

    Original;
    PHP-Code:
            $objModule $this>Database->prepare("SELECT * FROM tl_module WHERE id=?")
                                        ->
    limit(1)
                                        ->
    execute($intId);

            if (
    $objModule->numRows 1)
            {
                return 
    '';
            } 
    Ersetzt:
    PHP-Code:
            $objModule = \ModuleModel::findByPK($intId);

            if (
    $objModule === null)
            {
                return 
    '';
            } 
    Geändert von webstar (22.02.2013 um 05:55 Uhr) Grund: Fehler behoben

  3. #3
    Contao-Nutzer
    Registriert seit
    20.02.2012.
    Beiträge
    55

    Standard

    Das funktioniert bei mir leider nicht. Das objModule ist nicht NULL und der Inhalt numRows ist 1.
    Der dump von $this->objModel in ModuleNewsMenu.php (Zeile 176) liefert aber NULL, wenn das Modul Nachrichten Archiv-Menü über Merger2 geladen werden soll.
    Wenn ich die Zeilen 176 - 179 (in ModuleNewsMenu.php) auskommentiere, wird das Archiv-Menü angezeigt, es gibt aber keine Weiterleitungsseite (ist logisch).

    Frage: Warum existiert das objModel nicht?

    Trotzdem Danke!

  4. #4
    Contao-Urgestein
    Registriert seit
    29.10.2009.
    Ort
    Magdeburg
    Beiträge
    2.020
    Partner-ID
    626
    User beschenken
    Wunschliste

    Standard

    In welcher Datei hast du die Änderungen vorgenommen? Ich bezog mich auf die ModuleMerger2.php ab Zeile 368.

    Das Problem ist nicht, das der Datensatz nicht gefunden wird, sondern dass es kein Model ist, das die Funktion getRelated mit dich bringt.

  5. #5
    Contao-Nutzer
    Registriert seit
    20.02.2012.
    Beiträge
    55

    Standard

    Ja, jetzt habe ich den Unterschied (endlich) gesehen. Ich hatte nur die if-Konstruktion entsprechend Deiner Anleitung geändert, nicht aber die davor stehende SELECT-Anweisung. Jetzt klappt es. Tausend Dank!

    Als nächstes müsste Tristan Lins diese Änderung ins Repository übernehmen. Wie kann man das triggern?

  6. #6
    Contao-Urgestein
    Registriert seit
    29.10.2009.
    Ort
    Magdeburg
    Beiträge
    2.020
    Partner-ID
    626
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von mPunkt Beitrag anzeigen
    Als nächstes müsste Tristan Lins diese Änderung ins Repository übernehmen. Wie kann man das triggern?
    Hab gestern bereits den Bug-Eintrag erstellt: https://github.com/bit3/contao-merger2/issues/3

  7. #7
    Contao-Fan Avatar von Stranger
    Registriert seit
    20.06.2009.
    Ort
    Blankenburg
    Beiträge
    746
    Partner-ID
    5635
    User beschenken
    Wunschliste

    Standard

    Komisch, bei mir existiert der Bug immer noch (Contao 3.2.7)

    Fatal error: Call to a member function getRelated() on a non-object in /system/modules/news/modules/ModuleNewsMenu.php on line 178
    Du willst dich bei mir bedanken?
    Ich freue mich über Geschenke von meiner Amazon-Wunschliste.

    Contao-Anwender seit 2008
    Contao-Entwickler seit 2013, mehr als 50 Contao Erweiterungen programmiert

    Mein Unternehmen aus Blankenburg (Harz): Fast & Media

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •