예제 #1
0
 /**
  * 
  * Callable for `attachResource()` that adds resource routes.
  * 
  * @param RouteCollection $router A RouteCollection, probably $this.
  * 
  * @return null
  * 
  */
 protected function resourceCallable(RouteCollection $router)
 {
     // add 'id' and 'format' if not already defined
     $tokens = array();
     if (!isset($router->tokens['id'])) {
         $tokens['id'] = '\\d+';
     }
     if (!isset($router->tokens['format'])) {
         $tokens['format'] = '(\\.[^/]+)?';
     }
     if ($tokens) {
         $router->addTokens($tokens);
     }
     // add the routes
     $router->addGet('browse', '{format}');
     $router->addGet('read', '/{id}{format}');
     $router->addGet('edit', '/{id}/edit{format}');
     $router->addGet('add', '/add');
     $router->addDelete('delete', '/{id}');
     $router->addPost('create', '');
     $router->addPatch('update', '/{id}');
     $router->addPut('replace', '/{id}');
 }