Ocultar controlador

Hola

Esto es mas una curiosidad que otra cosa por que tampoco es que sea
muy útil, pero bueno…

Saben si es posible ocultar el controlador en la url? por ejemplo en
el routes.rb

map.root :controller => ‘welcome’
en la url http://localhost:3000 no se muestra el welcome y no es
necesario esto http://localhost:3000/welcome

saben si es posible hacer algo similar a otros controladores?

Muchas gracias.
Un saludo.

Tu puedes usar cualquier controlador como “root”, pero tu de alguna
manera le has de poder decir a Rails que controlador quieres ejecutar.

En los resources podrias hacer …

map.resources :users, :controller => “x”

Y utilizar http://0.0.0.0:3000/x para acceder a ese controlador.

Just my two cents … :wink:

Un saludo,

Francesc

On Jan 24, 2008, at 9:05 PM, alarkspur wrote:

necesario esto http://localhost:3000/welcome

saben si es posible hacer algo similar a otros controladores?

Muchas gracias.
Un saludo.


Ror-es mailing list
[email protected]
http://lists.simplelogica.net/mailman/listinfo/ror-es


name. Francesc E. i Martí
voice. +34 678.681.603

Francesc E.
escribió:> Tu puedes usar cualquier controlador como “root”, pero tu de alguna

manera le has de poder decir a Rails que controlador quieres ejecutar.

En los resources podrias hacer …

map.resources :users, :controller => “x”

Y utilizar http://0.0.0.0:3000/x para acceder a ese controlador.

No sé si el ejemplo de Francesc es del todo correcto, para acceder al
UsersController desde http://0.0.0.0:3000/x yo haría algo
así:
map.resources :users
map.connect ‘x’, :controller => ‘users’

Si no usas REST, te bastaría con

 map.connect 'x', :controller => 'foo'

para que http://0.0.0.0:3000/x ejecute la acción por defecto del
controlador FooController.

En fin, lo de las rutas tiene tantas posibilidades de configuración que
cada uno termina usando el estilo que más le gusta :smiley:


Raul M. - Freelance Web D.
http://raul.murciano.net

Mmmm … tienes razón … me colé. Esto es para utilizar un
controlador especifico para un resource.

La proxima vez lo miraré un par de veces antes de pulsar la tecla de
envio. :wink:

Un saludo,

Francesc

On Jan 24, 2008, at 10:27 PM, Raul M. wrote:

No sé si el ejemplo de Francesc es del todo correcto, para acceder al

[email protected]
http://lists.simplelogica.net/mailman/listinfo/ror-es


name. Francesc E. i Martí
voice. +34 678.681.603

 map.connect 'x', :controller => 'foo'

para que http://0.0.0.0:3000/x ejecute la acción por defecto del
controlador FooController.

correcto, toy de acuerdo :slight_smile:

pero si lo que se desea es ejecutar la acción del controlador sin
ningún tipo de indicación en la url, seria algo como

map.connect ‘’, :controller => ‘foo’
map.connect ‘’, :controller => ‘bar’

lo anterior estaría mal por que por orden siempre se ejecutaría foo,
entonces…
¿seria posible ejecutar foo y bar sin necesidad asignarles un valor?

por lo que he probado parece ser que no :frowning:

alarkspur
escribió:> map.connect ‘’, :controller => ‘foo’

map.connect ‘’, :controller => ‘bar’

lo anterior estaría mal por que por orden siempre se ejecutaría foo,
entonces…
¿seria posible ejecutar foo y bar sin necesidad asignarles un valor?

por lo que he probado parece ser que no :frowning:

Claro, pero es que tampoco es deseable: por definición[1] una URL debe
identificar a un único recurso de internet.

[1] Localizador de recursos uniforme - Wikipedia, la enciclopedia libre


Raul M. - Freelance Web D.
http://raul.murciano.net

Claro, pero es que tampoco es deseable: por definición[1] una URL debe
identificar a un único recurso de internet.

[1] Localizador de recursos uniforme - Wikipedia, la enciclopedia libre

ok, gracias por la
aclaración.
Un saludo.

Escribo aquí por que creo que mi cuestión tiene algo que ver.

Necesito en mi aplicación rutas del tipo “Website Domain Names, Online Stores & Hosting - Domain.com
y a
la vez también necesito acceder a “dominio.com/nombre-de-categoria”.

En mi routes.rb tengo algo así:

map.resources :articles
map.resources :categories
map.article ':id", :controller => ‘users’, :action => ‘show’
map.category ':id", :controller => ‘categories’, :action => ‘show’

Así puedo usar article_path(@article) y category_path(@category) que
devuelven las rutas que necesito, pero claro, al intentar acceder a la
ruta
de la categoría, realmente va a parar a la del artículo y no funciona.

No se si me he explicado bien. Gracias!