Mi primera web

Bien, llevo ya como 2 semanas empapándome de ror y voy a hacer mi propia
página. El dilema que se me presenta ahora es que toda mi página tiene
en común la cabecera, el menu, el pie y una columna, lo único que
cambiará es el cuerpo de la página, bien he hecho ésto:

Necesito un layout, para ello me he creado el application.rhtml:

.....
...
<% for m in menu %> <% link_to m, :action => m %> <% end %>
...
<%= @content_for_layout %>
...

Bien, toda la web tiene que tener en común la cabecera, menú, columna y
pie, y dependiendo de la sección que esté pues que me meta el nuevo
contenido en el cuerpo.
Había pensado meter el menú en un array y recorrerlo en el layout para
que si el día de mañana quiero meter una nueva sección sólo lo tenga que
incluir en el código y no en la plantilla:
menu=[“Inicio”, “Fotos”,“Foro”, “Multimedia”] por ejemplo

Lo que he hecho ha sido crearme un controlador Inicio para partir de
aquí la
aplicación:class InicioController < ApplicationController
def index
#comienza mi
aplicación @menu=[“Inicio”,“Banda”,“Fechas”,“Multimedia”,“Fotos”,“Libro
visitas”,“Foro”,“Contacto”]
list
render :action=>“list”
end
def list
#Me saca un contenido
end
end

Mi tanda de preguntas :slight_smile:

  1. Dónde puedo meter las variables para que el layout me lo lea esté
    donde esté, porque en el momento que vaya a “list”, mi array @menu ya no
    está y el layout intenta recorrer el array pero como no existe me daría
    error.
    Había pensado en hacer la variable global en el index:
    $menu =[…] y luego recorrer esa variable en el layout, lo acabo de
    probar y me funciona, pero bueno por saber cómo lo haríais vosotros.
  2. la última por ahora es para partir de cero os creais un controlador
    tipo Principal, Inicio, index…?

Preguntas tontas de principiante, :slight_smile:

Miguel Angel Calleja Lázaro
escribió:> Bien, llevo ya como 2 semanas empapándome de ror y voy a hacer mi propia

página.

Estupendo! :slight_smile:

Necesito un layout, para ello me he creado el application.rhtml:

Mi tanda de preguntas :slight_smile:

  1. Dónde puedo meter las variables para que el layout me lo lea esté
    donde esté (…)

Bueno, supongo que hay varias maneras de hacer lo que quieres, a bote
pronto estas son las que se me ocurren:

  • Si quieres que tu array @menu sea una constante para toda tu
    aplicación puedes añadirlo al archivo environment.rb.
  • Si quieres que sea común a todos tus controladores puedes definirlo en
    ApplicationController, y será heredada por todos ellos.
  1. la última por ahora es para partir de cero os creais un controlador
    tipo Principal, Inicio, index…?

En lo que se refiere a acciones y controladores yo, antes de crear nada,
me planteo qué acciones permitirá la web, y agrupo en un mismo
controlador aquellas que van a trabajar en una misma funcionalidad o en
funcionalidades relacionadas.

Preguntas tontas de principiante, :slight_smile:

De tontas nada, si leyeras las mías… :wink:

Saludos,
Raúl