I'm attending CakeFest 2010!

3.4.5.2 Parâmetros nomeados

Uma novidade no CakePHP 1.2 é a possibilidade de usar parâmetros nomeados. Você pode nomear parâmetros e enviar seus valores usando a URL. Uma requisição /noticias/ler/titulo:primeira+noticia/categoria:esportes teria como resultado uma chamada a ação ler() do controller Noticias (NoticiasController). Nesta ação, você encontraria os valores dos parâmetros título e categoria dentro de $this->passedArgs['titulo'] e $this->passedArgs['categoria'] respectivamente.

Alguns exemplos para a rota padrão:

URL mapeadas para as ações dos controladores, usando rotas padrão:
    
URL: /monkeys/jump
Mapeado para: MonkeysController->jump();
 
URL: /products
Mapeado para: ProductsController->index();
 
URL: /tasks/view/45
Mapeado para: TasksController->view(45);
 
URL: /donations/view/recent/2001
Mapeado para: DonationsController->view('recent', '2001');

URL: /contents/view/chapter:models/section:associations
Mapeado para: ContentsController->view();
$this->passedArgs['chapter'] = 'models';
$this->passedArgs['section'] = 'associations';
  1. URL mapeadas para as ações dos controladores, usando rotas padrão:
  2. URL: /monkeys/jump
  3. Mapeado para: MonkeysController->jump();
  4. URL: /products
  5. Mapeado para: ProductsController->index();
  6. URL: /tasks/view/45
  7. Mapeado para: TasksController->view(45);
  8. URL: /donations/view/recent/2001
  9. Mapeado para: DonationsController->view('recent', '2001');
  10. URL: /contents/view/chapter:models/section:associations
  11. Mapeado para: ContentsController->view();
  12. $this->passedArgs['chapter'] = 'models';
  13. $this->passedArgs['section'] = 'associations';