+ Antworten
Ergebnis 1 bis 1 von 1

Thema: Gleiche Daten in mehreren Views (view in view)?

  1. #1
    Neu an Board
    Registriert seit
    13.07.2011
    Beiträge
    1
    Bedankte sich
    0
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Frage Gleiche Daten in mehreren Views (view in view)?

    Hallo Forum,

    die Suche hat mir leider nicht viel weitergeholfen, da ich auch nicht so genau weiss wonach ich suchen soll.

    Mein Problem ist folgendes:

    Ich schreibe eine Komponente die aus mehreren Views besteht, von denen auch jede View ein eigenes Model besitzt. Nun möchte ich aber in jeder View einen Bereich haben, der immer die gleichen Daten darstellt.
    Natürlich möchte ich diese Daten nicht in jedem Model neu laden und in jeder View das Layout neu einfügen. Bei Änderungen am Layout müsste ich dann jede View und evtl. jedes Model bearbeiten

    Wie ich woanders mitbekommen habe, könnte ich eine Art "Über"-Model schreiben, das diese Daten lädt und für dieses Model auch eine eigene View erstellen. Und diese View könnte ich dann in den anderen Views mit einbinden.

    Leider habe ich keine Ahnung wie ich das bewerkstelligen könnte, da ich bisher nicht Mal wusste, dass das überhaupt möglich ist. Gibt es evtl. eine kostenlose Komponente die ich mir als Beispiel ansehen könnte. Oder könnte ihr mir ein Beispielscript zeigen, dass vorführt wie ich eine View in einer anderen View anzeige!?

    Danke und Gruß

    Olli

    Lösung:

    Im Komponenten-Controller den Output einer View cachen:
    PHP-Code:
    $navView = &$this->getView('navigation'$viewType);

    ob_start();
    $navView->display();
    $navigation ob_get_contents();
    ob_end_clean();
          
    $view = &$this->getView('someSite'$viewType);
    $view->assign('navigation'$navigation);
          
    $view->display(); 
    jetzt noch in der view.html.php:
    PHP-Code:
    $this->assignRef('navigation'$this->navigation); 
    und fertig. Jetzt kann man den Output der View an jeder beliebigen Stelle im Template der anderen View ausgeben.

    Gruß
    Geändert von OCMvL (13.07.2011 um 19:41 Uhr)

+ Antworten

Stichworte

Lesezeichen

Berechtigungen

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