lunedì 8 marzo 2010

Rails - Controller Routing in Subdirectory

Al fine di razionalizzare e aggregare funzioni specifiche puo' essere utile far rispondere un determinato controller ad un webpath nidificato rispetto a quello normale.
Per fare questo e' sufficiente ci sono una serie di passi da effettuare :
  • creare un controller in subfolder della dir. controller (se desiderate tramite script/generate subfolder/controller, es. ruby script/generate admin/users ).
  • creare le view in un subfolder con lo stesso nome del subfolder.
  • se desiderate potete modificare il routing in routes.rb in modo da puntare la richiesta al nuovo percorso, tramite :
    map.connect 'subfolder/controller/:action/:id', :controller => 'subfolder/controller' o tramite il map.namespace.
Se siamo in presenza di un application layout o in ogni caso in cui occorra puntare al controller corretto indicare nel reference :controller :
  • "subfolder/controller" se si desidera puntare al controller nidificato.
  • "/controller" se si desidera puntare al controller in posizione root.

Nessun commento:

Posta un commento