2010-03-27 3 views
3

Comment appeler une route (dans la vue) dans CakePHP de la même manière dans Rails?Appel des routes nommées dans CakePHP de la même manière dans Ruby on Rails

Ruby on Rails

routes.rb

map.my_route '/my-route', :controller => 'my_controller', :action => 'index' 

vue

link_to 'My Route Name', my_route_path 

CakePHP

routes.php

Router::connect('/my-route', array('controller' => 'my_controller', 'action' => 'index')); 

vue

$html->link('My Route Name', '/my-route'); 

Je pense que la façon dont Rails est mieux, parce que je peux faire des changements dans la « url » et je ne ai pas besoin modifie le code de toutes les vues.

Répondre

3

Utilisez la version de tableau dans la vue. CakePHP effectue un routage inverse pour déterminer le lien de chaîne à utiliser, c'est-à-dire '/ my-route', à partir du tableau de controller/action/params dans le tableau.

$html->link('My Route Name', array('controller' => 'my_controller', 'action' => 'index')); 

Consultez également ce billet depuis Mark Gandolfo

Questions connexes