Codeigniter - нормально ли добавлять функциональность в конструктор контроллеров? - PullRequest
1 голос
/ 05 июня 2010

Я делаю проект, в котором я хочу, чтобы пользователь искал магазины в разных городах и хотел, чтобы URL был таким: домен / магазин / город / имя.

Итак, я создал контроллер в codeigniter под названием Магазин. Но я не могу создать функцию города, поскольку городская часть URL-адреса изменяется в зависимости от названия города. Один из простых способов сделать это - добавить функцию под названием «поиск» и добавить туда функциональность, но затем я получаю URL-адрес: домен / магазин / поиск / город / имя, которого я действительно хотел бы избежать

Итак, мой вопрос: можно ли добавить мою функциональность непосредственно в конструктор, чтобы избежать этой дополнительной "поисковой" части в URL? Я боюсь, что могут быть некоторые уловки производительности, которые потенциально сохраняют класс в памяти, поэтому конструктор не будет вызываться каждый раз.

1 Ответ

2 голосов
/ 05 июня 2010

Маршрутизация Codeigniter довольно гибкая - вы, вероятно, можете сделать то, что вам нужно, поигравшись с настройками в вашей конфигурации маршрутов, возможно, используя функцию подстановочных знаков:

Если нет, вы всегда можете использовать mod_rewrite в Apache для плавной перезаписи URL-адресов из формы домен / магазин / город / имя в форму домен / магазин / поиск / город / имя или в другой вариант.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...