J'ai un contrôleur Rapports et divers rapports:Comment éviter les raccourcis vers map.root?
http://localhost/reports/main/this_month
http://localhost/reports/main/last_month
http://localhost/reports/main/this_year
Je voulais http://localhost par défaut à http://localhost/reports/main/this_month. C'est assez facile en utilisant map.root dans mes routes.rb.
Cependant, lorsque je fais cela, les liens vers http://localhost/reports/main/this_month sont maintenant raccourcis à http://localhost. Je veux que les liens restent pleins
Oui, map.reports et l'utilisation de reports_url font l'affaire. Je ne comprends pas vraiment pourquoi reports_url ne raccourcit pas mais ce qui suit: <% = link_to_unless_current 'This Month',: controller => 'reports',: action => 'main',: timeframe => 'this_month'% > –
Plus de problèmes: utiliser une route nommée pour les rapports signifie maintenant que si j'utilise <% = link_to_unless_current 'This Month', reports_url (: action => 'main',: timeframe => 'this_month')%> pour désactiver le courant page dans le menu, ce code ne traite pas http: // locahost/comme courant. –
Privilégiez les chemins nommés '_path' sur leurs homologues' _url' sur les pages du site. 'Link_to_unless_current' utilise l'URL actuelle pour voir s'il existe une correspondance - vous pouvez la remplacer dans' application_helpers.rb' pour gérer votre cas particulier . –