Ho un controller senza alcun modello correlato. Questo controller deve estrapolare alcune informazioni da vari modelli. Ho molte azioni lì, che definiscono determinate visualizzazioni sulla pagina. Quale sarebbe il modo migliore per organizzare i percorsi per questo controller?Basic Ruby on Rails Domanda sull'instradamento
Quello che vorrei è avere/dashboard/qualcosa che punti a qualsiasi azione nel controller dashboard. Non azioni come new/edit ma arbitrarie (showstats, ecc.).
Con tentativi ed errori ho fatto qualcosa di simile:
map.dashboard 'dashboard/:action', :controller => 'dashboard', :action => :action
Ora è possibile accedere a tali URL utilizzando l'helper:
dashboard_url('actionname')
Questo approch sembra funzionare bene, ma è questa è la strada da percorrere? Non sono del tutto sicuro di capire come vengono generati i nomi dei metodi di supporto. Come generare gli stessi nomi di helper dei controller di base "action_controller_url"? Sarebbe più generico e reso il codice più coerente.
Grazie in anticipo.
C'è un modo per riformattare l'assistente, o fornire uno personalizzato? IE: actionname_dashboard_url invece dashboard_url (: actionname)? – mdrozdziel
Dovresti definire un nuovo percorso per ogni singolo. Il singolare metodo di instradamento è più lungo di un paio di caratteri, ma produce meno codice in generale. –
Sì, penso ci sia un meccanismo automatico, che genera gli helper al volo, ma poiché non è così, mi limito ad attenermi alla convenzione dashboard_url (: actionname). – mdrozdziel