Book Image

CakePHP 2 Application Cookbook

Book Image

CakePHP 2 Application Cookbook

Overview of this book

Table of Contents (20 chapters)
CakePHP 2 Application Cookbook
Credits
Foreword
About the Authors
About the Reviewer
www.PacktPub.com
Preface
Index

Custom route class


Although the base routing system provided with CakePHP will cover almost all cases, there may be times when you need to handle things which are slightly more complex. For this reason, the framework provides the option to define a custom route class, which processes more complicated scenarios.

In this recipe, we'll create a custom route class to handle news headlines for given year and month.

Getting ready

For this recipe, we'll need to create a custom route class to use in our routing. Therefore, create a file named HeadlineRoute.php in app/Routing/Route/ with the following content:

<?php
App::uses('CakeRoute', 'Routing/Route');
App::uses('ClassRegistry', 'Utility');

class HeadlineRoute extends CakeRoute {
}

We'll then need some data to work with. So, create a table named headlines using the following SQL statement:

CREATE TABLE headlines (
  id INT NOT NULL AUTO_INCREMENT,
  title VARCHAR(50),
  year SMALLINT(2) UNSIGNED NOT NULL,
  month SMALLINT(2) UNSIGNED NOT NULL,...