Buenas,
Andaba fijandome en github.com que genera rutas del estilo
http://localhost:3000/nombredeusuario
en lugar de
http://localhost:3000/users/nombredeusuario
me había puesto a intentarlo y parece que se puede con algo como
map.with_options :controller => ‘users’ do |user|
user.show ‘/:name’, :action => ‘show’
end
map.user ‘/:name’, :controller => ‘users’, :action => ‘show’
pero claro, lo he liado un poco para ver si así terminaba de
entenderlo y he generado una tabla users de la siguiente manera
users
id | parent_id | name
1 | | uno
2 | | dos
3 | 2 | tres
Si ahora quiero obtener la ruta
http://localhost:3000/dos/tres
no puedo generar en routes.rb algo como
map.user ‘/:name/:name’, :controller => ‘users’, :action => ‘show’
Alguna sugerencia de como solventar este caso cuando se tienen dos
parametros (:name) que se llaman igual en la url
Muchas gracias por la ayuda.
Saludos.
Alguna sugerencia de como solventar este caso cuando se tienen dos
parametros (:name) que se llaman igual en la url
¿Se te ocurre algún ejemplo práctico en el que tenga sentido enviar
dos parámetros con el mismo nombre?
¿Cómo los diferenciarías al recibirlos en tu controlador para trabajar
con ellos?
hola,
Si ahora quiero obtener la ruta
http://localhost:3000/dos/tres
no puedo generar en routes.rb algo como
map.user ‘/:name/:name’, :controller => ‘users’, :action => ‘show’
Alguna sugerencia de como solventar este caso cuando se tienen dos
parametros (:name) que se llaman igual en la url
una posible opción es usar en la ruta algo como
map.connect “algo/*names”, :controller=>blabbla…
Eso te provoca que cuando llaman a una ruta que empieza por “algo/” te
pase el resto de la url en un array llamado “names”, siendo cada
posición un fragmento de la url. Con eso tú ya puedes hacer lo que
necesites.
saludos,
javier ramírez
Puedes enviar dos parámetros con el mismo nombre, pero como los vas a
diferencias en el controlador?? tienes algunas alternativas, una puede
ser
hacer algo asÃ
map.user ‘/:parent_name/:name’, :controller => ‘users’, :action =>
‘show’
y lo tendrás diferenciado en dos parámetros diferentes, luego los
recoges
con params[:name] y params[:parent_name] y haces lo que quieras con
ellos.
El dÃa 19 de junio de 2008 15:16, Raul M. [email protected]
escribió:
Muchas gracias por la ayuda, muy amables.
Saludos.
El 19/06/2008, a las 15:30, javier ramirez
escribió:
hola,