Estoy intentando implementar un sistema de "contexto" similar al utilizado por GitHub. Por ejemplo, se puede crear una publicación que pertenezca al Usuario o a una de las Empresas a las que pertenece el Usuario, según si el Usuario se encuentra en el contexto "Usuario" o un contexto que hace referencia a una de las Empresas.Enrutamiento de Rails 3 según el contexto
Como parte de esto, me gustaría poder enrutar en función del contexto actual del usuario. Por ejemplo, si el usuario está en su propio contexto, /dashboard
debe enrutar a users/show
, pero si están en el contexto de la empresa con ID 35, entonces /dashboard
debe enrutar a companies/35/dashboard
.
pude ruta /dashboard
a un controlador específico encargado de tomar tales decisiones, tales como context#dashboard
que luego podría hacer una redirect_to
, pero esto no se siente del todo bien (tal vez porque estamos tomando lógica que los carriles de módulo de enrutamiento debe ser responsable y moverlo a un controlador?)
¿Cuál sería la forma correcta de resolver este problema en Rails 3?
Entiendo que no se siente bien con el controlador del tablero como una opción de pseudo enrutador, pero tener el enrutador leyendo un modelo de contexto/sesión a partir de información pasada por cookies/params también parece extraño. – hellvinz