Pull to refresh

Comments 4

Это позволит быстро осуществлять поиск и безболезненно производить рефакторинг контроллеров и их адресов.

Так и не понял, за счет чего? С виду все стало мало того что менее удобно, чем допустим при использовании аннотаций и шаблонизаторов типа Twig (при помощи экстеншенов можно полностью отделить шаблоны от имплементации всего этого внутри фреймворка. Так же это не решает проблему экспорта роутов в JS (например можете посмотреть на FosJsRouting), но и крайне сложно читается и усложняет код.
За год работы в команде над крупным проектом в сфере околобанковских услуг, роуты требующие дополнительной параметризации на стороне клиентского скрипта использовались для работы ajax.
Этих адресов пользователь невооруженным глазом не видит. А в примере выше, эта тема специально оставлена на усмотрение читателя.
Можно использовать любые JS библиотеки и импортировать в них все настройки роутинга приложения.
Для того чтобы показать проблему более наглядно, приведу следующий пример, когда адреса контроллеров задаются в системе где только угодно, в контроллерах, в представлениях, иногда в клиентских скриптах, и этот процесс становиться неуправляемым. Речь идет о разработки больших систем, командой более одного человека,
Эту проблему и решает FosJSRouting, правда в контексте компонента Symfony/Routing. То есть мы дампим все правила и экспортируем в JS, где уже либа просто генерит урлы в зависимости от имени раута и параметров. То есть мы привязывается только к определенным раутам. Советую посмотреть на их реализацию, возможно даст пищи для размышлений.

Мне кажется вы просто выбрали не совсем хороший инструмент для подобного проекта. Если вам так важна гибкость, возможность рефакторинга и т.д, Yii1.1 не лучший кандидат. Хотя можно опять же навесить на него Symfony/Routing или любой другой компонент для маршрутизации и радоваться решению хотя бы этой проблемы.
Sign up to leave a comment.

Articles