Ergebnis 1 bis 5 von 5

Thema: Problem mit PageModel

  1. #1
    Contao-Fan
    Registriert seit
    27.11.2009.
    Beiträge
    326

    Standard Problem mit PageModel

    Hallo zusammen,

    ich möchte die URL einer Seite bekommen und verwendet dafür find() Methoden von PageModel, bekomme aber kein Page Object zurück, sondern Contao\Model\Collection.

    PHP-Code:
    use Contao\PageModel;

    class 
    xxx extends ModuleEventlist
    {

        protected function 
    compile()
        {
            ...
            
    $objProfil PageModel::findPublishedByIdOrAlias($string);
            ...
            
    $link $objProfil->getFrontendUrl();
            ...
        }


    ergibt:

    UndefinedMethodError
    HTTP 500 Internal Server Error
    Attempted to call an undefined method named "getFrontendUrl" of class "Contao\Model\Collection".

    Habt ihr Tipps?? Danke!

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.109
    Partner-ID
    10107

    Standard

    $objProfil->current()->getFrontendUrl();
    » sponsor me via GitHub or PayPal or Revolut

  3. #3
    Contao-Fan
    Registriert seit
    27.11.2009.
    Beiträge
    326

    Standard

    Super - danke für die Schnelle Hilfe!! War schon am Verzweifeln..

    hatte u.a. das gefunden:

    PHP-Code:
    $this->Template->referer PageModel::findById($this->overviewPage)->getFrontendUrl(); 
    in der ModuleEventreader.php (Core) - da funzt das demnach ohne current?!

    EDIT: oder ist findByIdOrAlias nicht eindeutig (wie z.B. findOneBy und demnach auch findById)?
    Geändert von tlnewbie (13.10.2022 um 14:54 Uhr)

  4. #4
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.109
    Partner-ID
    10107

    Standard

    findPublishedByIdOrAliasgibt dir eine Collection, weil es mehrere Seiten mit dem selben Alias geben kann. findById gibt dir ein einzelnes Model, weil das eindeutig ist. findOneBy gibt dir immer ein Model.
    » sponsor me via GitHub or PayPal or Revolut

  5. #5
    Contao-Fan
    Registriert seit
    27.11.2009.
    Beiträge
    326

    Standard

    ok, verstanden & nicht auf dem Schirm gehabt (Alias mehrfach mögl.).

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
  •