Mehrere Views in Layout

Hallo,

ich möchte folgendes machen. Ich habe eine Seite. Diese soll links ein
Menü haben, in der Mitte soll der normale Content erscheinen und rechtes
kommen Infoboxen. Jetzt wollte ich das Menü und die rechten Boxen in
Views auslagern, da jam hier meist DB Logik dahinter steckt, doch wie
kann ich diese im Layout integrieren. Oder gibt es bessere Lösungen?

Mfg Marco

Hallo Marco

Am 20.11.2008 um 12:49 schrieb Marco Scholl:

Hallo,

ich möchte folgendes machen. Ich habe eine Seite. Diese soll links
ein Menü haben, in der Mitte soll der normale Content erscheinen und
rechtes kommen Infoboxen. Jetzt wollte ich das Menü und die rechten
Boxen in Views auslagern, da jam hier meist DB Logik dahinter
steckt, doch wie kann ich diese im Layout integrieren. Oder gibt es
bessere Lösungen?
Mir fallen drei Lösungen ein:

  • Du packst die DB-Logik in Helper, die Du dann einfach in partials
    aufrufst
  • Cells: http://cells.rubyforge.org/ (keine Erfahrung damit)
  • contexts-rails: GitHub - floere/contexts-rails
    (disclaimer: Wurde bei uns entwickelt. Wird im Moment aber nur
    spärlich maintained. Für uns funktioniert’s.)

Grüße, Niko.

Am 20.11.2008 um 12:49 schrieb Marco Scholl:

ich möchte folgendes machen. Ich habe eine Seite. Diese soll links
ein Menü haben, in der Mitte soll der normale Content erscheinen und
rechtes kommen Infoboxen. Jetzt wollte ich das Menü und die rechten
Boxen in Views auslagern, da jam hier meist DB Logik dahinter
steckt, doch wie kann ich diese im Layout integrieren. Oder gibt es
bessere Lösungen?

Wenn ich dich recht verstehe…
kannst du alles auslagen…

in der application.rb

<%= yield :menu %> <%= yield :content_left %>

in der entsprechenden Seite dann jeweils:

<% content_for :menu do %>
<%=render :partial => “layouts/menu” %>
<% end %>

<% content_for :left do %>

dies und das

<% end %>

im partial:
_menu.html.erb

  • <%= link_to 'Archiv', archivs_path%>
  • <%= link_to 'Impressum', contacts_path%>

Gruß

Werner L.
Lindenburger Allee 22 - 50931
Köln
0221.8805 635


http://www.webagentur-laude.de