2011-12-07 8 views
5

se dan cuenta de que esta pregunta es similar a esta.Cómo pasar parámetros de URL a la raíz [en las rutas.rb] en Ruby on Rails

Pass URL parameters to a redirect_to :root

Sin embargo, me pregunto para iniciar la aplicación con parámetros pasados ​​desde el principio. Tal vez root: en el archivo routes.rb no es exactamente la forma correcta de hacerlo?

Básicamente, esperaba que comenzara así.

http://localhost:3000/controller?hello_id=1&finder_id=1&laser_id=1&sharks_id=4

Cualquier pensamiento sería muy apreciada!

+0

¿Sueña a pasar estos parámetros a 'rieles server' o sólo tiene que raíz ruta a ese controlador y acción con tales params? ¿Y por qué necesitas esto? – jibiel

+0

Estoy soñando con pasar los parámetros al servidor de rieles :) –

+0

Un ejemplo de por qué uno querría hacer esto para el "¿pero por qué ????" multitud: dicen que están usando kaminari. Supongamos que su ruta raíz es una lista que se actualiza con frecuencia, por lo que de forma predeterminada desea ir a la última página. No puede ir a la última página por defecto en el controlador, porque kaminari no pone "page = 1" en los enlaces a la primera página. Entonces, quieres una raíz para: "mi_lista # índice? Página = último". –

Respuesta

-1

Parece imposible en rieles.

Una forma de solucionar este es apuntar a una acción del controlador que volverá a dirigir a otra acción con todos los parámetros establecidos (solución más fea, la solución más feo en mi opinión)

o

puede apuntar a un controlador que establecerá valores predeterminados para los parámetros si no se pasaron los parámetros.

17

Tal vez ha cambiado en los últimos dos años, pero este es definitivamente posible ahora:

root to: 'controller#action', hello_id: 1, finder_id: 1, laser_id: 1, sharks_id: 4