De siempre, me ha gustado la paginita que pone ruby on rails en “/”. Pero
sucede que en producción esto no sale. Sería genial tener eso como página de
root, sobre todo cuando no tenemos/queremos mostrar una página CMS que diga
click aquí o click allá para tal cosa.
Resulta que esa vista está en railties y si adivinamos bien la ruta, la puedes
renderizar en una vista que responde a “/”. Para eso, creamos el método
“welcome” en el controlador genérico que está en controllers/application_controller.rb, A mi me quedó así:
“controllers/application_controller.rb”
classApplicationController<ActionController::Base# Prevent CSRF attacks by raising an exception.# For APIs, you may want to use :null_session instead.protect_from_forgerywith::exception# agregamos el método "welcome"defwelcomerenderFile.join(Gem.path.first,"gems/railties-#{Rails.version}/lib/rails/templates/rails/welcome/index.html.erb")endend
Je! No creerías que me iba bajar con una rutica escrita que debería cambiar con
cada release de rails verdad? Vamo, que no somos programadores por gusto y si
estoy con rails desde la versión 2; no fue comiendome los mocos. Dividido en sílaba: File.join conjuga la ruta de, Gem.path.first, osea el repo
con las gemas. Ahí ha de estar gem/railties- seguido por la versión de rails;
que porsupuesto, no hay que leer el árbol de directorios para deducirla.
Ahora el método welcome irá a buscar el welcome a board en railties. Solo falta
declarar la ruta, pa que pinche en cualquier entorno.
“config/routes.rb”
# el root clásicoget'/'=>"application#welcome"# las demás rutas aquí abajo