Usar "punto" en URLs

Hola todos!, estoy en un problemilla que ya le di muchas vueltas y no
me convence ninguna
solución.
La cosa es que tengo Tags, y por cada tag puedo ver que contenido esta
taggeado en /tags/:name (redefine to_params para que retorne el name y
no el id, para que quede “mas bonito”).

Ahora, si el tag tiene un punto, “explota”, ya que asume que por
ejemplo “web 2.0” el 0 es el formato, queriendo buscar el tag “web 2”
y hacer un render con formato “0” que obviamente no existe.

El url la encodeo con CGI::escape por el tema de los espacios u otros
caracteres raros, pero el punto, no se escapea, porque no es problema.
El problema es mio por hacerme “el bonito” :slight_smile:

Las rutas estan con el “generico” map.resources :tags, nada raro, no
se si me convendrá definir una ruta a mano sin soporte para el formato
de manera que tome todo el parametro como “id”.

A alguien le ha pasado o se le ocurre que accion tomar? Formato no
necesito, asi que pense en algo como deshabilitar el formato, pero
todavia no encontre si se puede.

Gracias de antemano.

¡Falta Uno! - http://www.falta-uno.com.ar/
Ricardo M.

Lo mejor es tener un segundo campo, por ejemplo “permalink”, en donde
tengas lo mismo que “name” pero limpio de carácteres feos: vocales con
acentos, signos, etc. Porque seguro que el punto no es el único
problemático, habrán también interrogaciones, barras, etc que te darán
problemas.

s2

Ricardo M. wrote:

Hola todos!, estoy en un problemilla que ya le di muchas vueltas y no
me convence ninguna
soluci�n.
La cosa es que tengo Tags, y por cada tag puedo ver que contenido esta
taggeado en /tags/:name (redefine to_params para que retorne el name y
no el id, para que quede “mas bonito”).

Ahora, si el tag tiene un punto, “explota”, ya que asume que por
ejemplo “web 2.0” el 0 es el formato, queriendo buscar el tag “web 2”
y hacer un render con formato “0” que obviamente no existe.

El url la encodeo con CGI::escape por el tema de los espacios u otros
caracteres raros, pero el punto, no se escapea, porque no es problema.
El problema es mio por hacerme “el bonito” :slight_smile:

Las rutas estan con el “generico” map.resources :tags, nada raro, no
se si me convendr� definir una ruta a mano sin soporte para el formato
de manera que tome todo el parametro como “id”.

A alguien le ha pasado o se le ocurre que accion tomar? Formato no
necesito, asi que pense en algo como deshabilitar el formato, pero
todavia no encontre si se puede.

Gracias de antemano.

�Falta Uno! - http://www.falta-uno.com.ar/
Ricardo M.