Estoy aprendiendo Ruby on Rails. He leído algunos libros, he visto muchos Railscasts, he visto algunos ejemplos.Diseñando sitios web con Ruby on Rails
Sin embargo, cuando estoy trabajando en mi primer proyecto serio con Rails, me he obsesionado sobre cómo implementar correctamente algunas características básicas del sitio web que la mayoría de los tutoriales que he visto carecen.
Por ejemplo: Menús de navegación. Muchos tutoriales sobre cómo hacer uno estático, pero ¿qué pasa con la dinámica? Si quiero hacer una barra de navegación diferente en las páginas, ¿cómo haré para eso?
Creo que la mejor manera de aprender cosas como esta es ver el código de ejemplo. ¿Hay algún buen sitio de fuentes abiertas en RoR? ¿Algún código de ejemplo que pueda verificar?
Supongo que mi pregunta realmente resulta en el uso de MVC. La idea básica es realmente básica, y entiendo eso. Pero parece que la mayoría de las aplicaciones tienen cada parte completamente separada la una de la otra ... ¿y si quiero, por ejemplo, combinar datos de dos modelos para mostrar en la misma página? Para tomar el ejemplo que planteé, si tengo un modelo de navegación y un modelo de página, ¿puede mi PageController acceder a ambos modelos? Supongo que asumí que un PageController solo puede acceder a un PageModel, y no a otro. Todos los ejemplos que he visto parecen operar de esta manera ... ¿es una suposición errónea?
O estoy totalmente perdido el punto, y es que 'hacerlo mal?'
No hay un uno-a-uno entre los modelos y controladores . No hay nada de malo en escribir un controlador que use datos de muchos modelos diferentes. El modelo es tu información. Los controladores son tus comandos. Las vistas son tus pantallas. – Ken