/ / Creación de páginas no estándar con Ruby on Rails - ruby-on-rails, ruby

Creación de páginas no estándar con Ruby on Rails - ruby-on-rails, ruby

Estoy creando un sitio personal con Ruby on Rails. En su mayor parte, RoR es la herramienta perfecta, ya que permite publicaciones de blogs, comentarios, etc., todo muy fácil.

Sin embargo, quiero tener algunas páginas que noRequiere cualquier modelo específico. Una página "Acerca de mí", por ejemplo, es necesaria y, sin embargo, no garantiza su propio modelo / controlador. Además, estas páginas "singleton" se vincularán desde mi diseño predeterminado y deben ser accesibles incluso cuando no se hayan creado objetos.

¿Hay una buena manera de manejar esto? He visto muchos sitios de RoR que tienen páginas individuales al mismo tiempo que mantienen URLs bonitas, pero nunca un ejemplo de cómo está estructurado. Finalmente, ¿es posible dinamizar estas páginas individuales? Prefiero no tener html estático, si es que se puede evitar.

Respuestas

7 para la respuesta № 1

Hay un Railscast sobre este tema que podría responder a su pregunta:

http://railscasts.com/episodes/117-semi-static-pages

He usado esta solución varias veces en mis aplicaciones Rails.


2 para la respuesta № 2

Normalmente creo un controlador "estático", por ejemplo un AboutController.

ruby script/generate controller about

Luego creo tantas acciones como mis páginas sobre: index, contact, terms... Luego agrego una ruta genérica en mi archivo route.rb.

map.about "about/:action", :controller => "about"

En mis páginas, hago referencia a una sola página como

<%= link_to "Contact", about_path(:action => "contact") %>

Debido a que son páginas estáticas, también puede considerar almacenarlas en caché en su controlador.

class AboutController < ApplicationController
caches_page :index, :contact, ...
end

Esta arquitectura se adapta bien a la mayoría de las páginas estáticas. Si desea páginas "semiestáticas", puede considerar cargar dinámicamente el contenido de la base de datos.