Mehrere Views in Layout


#1

Hallo und danke erstmal,

ich versuche mal den Aufbau zu erklären. Ich hab 1 Layout. Links habe
ich als Menü Kategorien. Diese sollen als Kontroller erstellt werden da
ich diese auch später für AJAX Request und XML Export nutzen möchte. In
der Mitte habe ich die Top/Latest Produkte zur Kategorieauswahl bzw in
letzer Ebene die Produkte der Kategorie. Die Produkte (ist Zubehör) /
Kategorien können eingegrenzt werden. Dazu dient Rechts eine
Produktauswahl. Wählt man nun ein Produkt aus, sollen Links und in der
Mitte die Anzeige angepasst werden. Zusätzlich gibt es Rechts als Box
eine Suche, Merkliste und ein Wolke mit Suchbegriffen. Somit haben
einige Boxen eigene Controller und eigene Logics. Verwende ich nun AJAX
funktioniert das Konzept. Will ich aber nun eine Nonajax Version
anbietet stehe ich blöd dar. Ich möchte halt nicht meine ganze Logic aus
den Controllern raus ziehen und dann per before-filter abarbeiten. Das
wäre ja nicht DRY. Daher die Frage wie ich mehrere Controller ins Layout
bekomme. Für bessere Lösungen bin ich dankbar.

Gruß Marco


#2

Hallo Marco,

Du kannst nicht mehrere Controller ins Layout bekommen. Das gab’s mal
früher mit
render_component. Da war die performance allerdings lausig und es wurde
von der
Verwendung abgeraten.

Das bereits erwähnte “Cells”-Plugin könnte genau die Lösung sein, nach
der Du
suchst.

Hier ist eine kleine Einführung:

Hier wird auch auf die Ajax-Verwendung hingewiesen.

http://www.infoq.com/news/2008/05/cells-components-for-rails

Ich hab’ mal damit herumgespielt und es war recht einfach einzubinden.
Produktiv
verwende ich Cells derzeit nicht.

Und hier geht’s zu “Cells”:

http://cells.rubyforge.org/

Viele Grüße

Michael K.

Marco Scholl schrieb:

Hallo und danke erstmal,

ich versuche mal den Aufbau zu erklären. Ich hab 1 Layout. Links habe ich als Menü Kategorien. Diese sollen als Kontroller erstellt werden da ich diese auch später für AJAX Request und XML Export nutzen möchte. In der Mitte habe ich die Top/Latest Produkte zur Kategorieauswahl bzw in letzer Ebene die Produkte der Kategorie. Die Produkte (ist Zubehör) / Kategorien können eingegrenzt werden. Dazu dient Rechts eine Produktauswahl. Wählt man nun ein Produkt aus, sollen Links und in der Mitte die Anzeige angepasst werden. Zusätzlich gibt es Rechts als Box eine Suche, Merkliste und ein Wolke mit Suchbegriffen. Somit haben einige Boxen eigene Controller und eigene Logics. Verwende ich nun AJAX funktioniert das Konzept. Will ich aber nun eine Nonajax Version anbietet stehe ich blöd dar. Ich möchte halt nicht meine ganze Logic aus den Controllern raus ziehen und dann per before-filter abarbeiten. Das wäre ja nicht DRY. Daher die Frage wie ich mehrere Controller ins Layout bekomme.
Für bessere Lösungen bin ich dankbar.