Ajoutez une colonne d'URL à votre table db. Ensuite, vous pouvez faire findByUrl()
. Comme indiqué ci-dessus, il est bien documenté.
function view($url = null) {
if (!$url) {
$this->Session->setFlash('Invalid url');
$this->redirect(array('action'=>'index'));
}
$this->set('something', $this->Something->findByUrl($url));
}
Vous pouvez créer des méthodes beforeSave
pour traiter vos urls pour une unicité UUencoding.
Vous pouvez éliminer la nécessité de préciser www.domain.com/controller/view/latest-news
en utilisant les routes comme:
Router::connect('/*', array('controller' => 'somethings', 'action' => 'view'))
Maintenant www.domain.com/latest-news
retournera la même page.