Routes

Buenas tardes,

Hace un buen rato que me estoy peleando con el archivo routes.rb y me
estoy empezando a volver loco.

De momento lo tengo así:

Install the default route as the lowest priority.

map.connect ‘’, :controller => ‘home’, :action => ‘index’
map.connect ‘admin/’, :controller => ‘admin/translate’, :action =>
‘index’
map.connect ‘:locale/:controller/:action/:id’

Estoy usando globalize y pongo la lengua en primer lugar. De hecho estoy
siguiendo el ejemplo que hay en la pagina de globalize.
Hasta aquí bién. Estoy empezando a generar los controladores de la parte
de administración. He procurado hacerlo bien como dicen de lo de las
buenas practicas en rails. Así que he hecho:

ruby script/generate controller Admin::Translate

total que dentro de app/controllers/admin tengo este controlador : class
Admin::TranslateController < ApplicationController

La idea es que cuando pongo http://localhost:3000/ en el navegador, se
me abre http://localhost:3000/es/home .

Hasta aquí perfecto.

Ahora quiero que cuando ponga http://localhost/3000/admin se me abra
http://localhost:3000/es/admin/translate

he puesto esta regla: map.connect ‘admin/’, :controller =>
‘admin/translate’, :action => ‘index’

me he estado mirando el libro de agile web development para entender
como funciona pero no consigo aclararme. En teoria el controlador es
translate a secas. Es correcto decirle admin/translate para decirle que
esta dentro de esta subcarpeta?

En todo caso el resultado que consigo con esta regla es ir a la
dirección:

http://localhost:3000/es/admin/admin/translate

Obviamente no encuentra nada porque sobra un “admin”. El caso es que no
se de donde sale el segundo admin.

Seguramente tendre algo mal entendido en como funciona el routes.rb
Si alguien me puede aclarar un poco seria de gran ayuda.

Gracias

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs