<?php /** * Standard routes for resource * Refer to routes/collections/example.php for further details */ return call_user_func(function () { $routes = new \Phalcon\Mvc\Micro\Collection(); // VERSION NUMBER SHOULD BE FIRST URL PARAMETER, ALWAYS // setHandler MUST be a string in order to support lazy loading $routes->setPrefix('/v1/events')->setHandler('\\PhalconRest\\Controllers\\EventController')->setLazy(true); $routes->options('/', 'optionsBase'); $routes->options('/{id}', 'optionsOne'); $routes->get('/', 'get'); $routes->head('/', 'get'); $routes->post('/', 'post'); $routes->get('/{id:[0-9]+}', 'getOne'); $routes->head('/{id:[0-9]+}', 'getOne'); $routes->delete('/{id:[0-9]+}', 'delete'); $routes->put('/{id:[0-9]+}', 'put'); $routes->patch('/{id:[0-9]+}', 'patch'); return $routes; });
/** * Collections let us define groups of routes that will all use the same controller. * We can also set the handler to be lazy loaded. Collections can share a common prefix. * @var $exampleCollection */ // This is an Immeidately Invoked Function in php. The return value of the // anonymous function will be returned to any file that "includes" it. // e.g. $collection = include('example.php'); return call_user_func(function () { $collection = new \Phalcon\Mvc\Micro\Collection(); $collection->setPrefix('/api/wordType')->setHandler('\\Base\\Controllers\\Dictionary\\WordTypeController')->setLazy(true); // Set Access-Control-Allow headers. $collection->options('/', 'optionsBase'); $collection->options('/{id}', 'optionsOne'); // First paramter is the route, which with the collection prefix here would be GET /example/ // Second paramter is the function name of the Controller. $collection->get('/', 'get'); // This is exactly the same execution as GET, but the Response has no body. $collection->head('/', 'get'); // $id will be passed as a parameter to the Controller's specified function $collection->get('/{id:[0-9]+}', 'getOne'); $collection->head('/{id:[0-9]+}', 'getOne'); $collection->post('/create', 'create'); $collection->post('/search', 'search'); $collection->post('/update', 'update'); $collection->delete('/{id:[0-9]+}', 'delete'); $collection->put('/{id:[0-9]+}', 'put'); $collection->patch('/{id:[0-9]+}', 'patch'); return $collection; });
<?php /** * Collections let us define groups of routes that will all use the same controller. * We can also set the handler to be lazy loaded. Collections can share a common prefix. * @var $exampleCollection */ // This is an Immeidately Invoked Function in php. The return value of the // anonymous function will be returned to any file that "includes" it. // e.g. $collection = include('example.php'); return call_user_func(function () { $exampleCollection = new \Phalcon\Mvc\Micro\Collection(); $exampleCollection->setPrefix('/v1/example')->setHandler('\\PhalconRest\\Controllers\\ExampleController')->setLazy(true); // Set Access-Control-Allow headers. $exampleCollection->options('/', 'optionsBase'); $exampleCollection->options('/{id}', 'optionsOne'); // First paramter is the route, which with the collection prefix here would be GET /example/ // Second paramter is the function name of the Controller. $exampleCollection->get('/', 'get'); // This is exactly the same execution as GET, but the Response has no body. $exampleCollection->head('/', 'get'); // $id will be passed as a parameter to the Controller's specified function $exampleCollection->get('/{id:[0-9]+}', 'getOne'); $exampleCollection->head('/{id:[0-9]+}', 'getOne'); $exampleCollection->post('/', 'post'); $exampleCollection->delete('/{id:[0-9]+}', 'delete'); $exampleCollection->put('/{id:[0-9]+}', 'put'); $exampleCollection->patch('/{id:[0-9]+}', 'patch'); return $exampleCollection; });