-
Notifications
You must be signed in to change notification settings - Fork 39
Router
Реализация роутинга, для организации ЧПУ. На данный момент реализован лишь роутинг "по умолчанию" - /module/controller/key1/value1/key2/value2
На данный момент нет
Пока всё "по умолчанию"
Исходя из идеологии юзабилити кода, надо бы сформировать требования к настройкам и использовании роутов.
Возможность получении информации о всех роутах в одном месте - возможно пока ограничимся одним конфигом, что не очень сочетается с модульностью. Как пример в ZFCore у каждого модуля может быть свой конфиг, и это удобно, но нет возможности отслеживать конфликты, и нет возможности быстро сооринтироваться по кастомному УРЛ в какой модуль нужно идти.
В обязательном порядке - при подключении/отключении роутов никаких изменений в коде более не требуется - т.е. схема с явным указанием используемого роута для URL принятого в ZF не годится.
Возможная конфигурация:
<?php
return array(
// static route
// url('users', 'login') => /login/
'login' => array('users', 'login'),
// regexp route
// url('users', 'profile', array('id'=>9)) => /users/9/
'users/(0-9)+' => array('users', 'profile', array('id')),
// regexp route
// url('users', '....', array('name'=>'root')) => /users/root/..../
'users/(a-z0-9)+/:controller' => array('users', 'bookmarks', array('name')),
);
Использование:
<?php
$this->url('users', 'login');
$this->url('users', 'profile', array('id' => $id));
$this->url('users', 'profile', array('name' => $name));
Acl
Application
Auth
Cache
Common
— Exception
— Collection
— Container
— Helper
— Options
— Singleton
Config
Controller
— Data
— Mapper
—— Crud
—— Rest
— Reflection
Crud
— Crud Table
Db
— Row
— Table
— Relations
— Query
Debug
EventManager
Grid
Http
Layout
Logger
Mailer
Messages
Nil
Proxy
Registry
Request
Response
Router
Session
Translator
Validator
View