Codeigniter - Twitter, как URI Routing - PullRequest
       4

Codeigniter - Twitter, как URI Routing

1 голос
/ 23 октября 2010

Скажем, я хотел следующую схему URL, которую я получил, установив следующий маршрут URI.

http://www.domain.com/profile/jimbob123

$route['profile'] = "profile/index";
$route['profile/(:any)'] = "profile/index/$1";

Теперь, допустим, я хочу, чтобы мой URL выглядел следующим образом, когда я хочу отобразить «статус».

http://www.domain.com/profile/jimbob123/status/908734efc

Как мне передать "jimbob123" и "908734efc" в мой метод, чтобы я мог проверить и получить эту конкретную запись? Я попробовал следующее, но это не сработало.

$route['user/(:any)/status/(:any)'] = "user/plan/$1/$2";

1 Ответ

3 голосов
/ 23 октября 2010

Я предполагаю, где вы написали user/(:any)/status/(:any) вы имели в виду profile/(:any)/status/(:any)

Это может быть одна проблема, а также:

Маршруты сопоставляются в порядке их объявления. Если вы написали это так:

$route['profile'] = "profile/index";
$route['profile/(:any)'] = "profile/index/$1";
$route['profile/(:any)/status/(:any)'] = "user/plan/$1/$2";

Это не будет работать, потому что "http://www.domain.com/profile/jimbob123/status/908734efc" соответствует второму маршруту.

Если вы поменяете местами вторую и третью строчки, у вас все будет хорошо.

$route['profile'] = "profile/index";
$route['profile/(:any)/status/(:any)'] = "user/plan/$1/$2";
$route['profile/(:any)'] = "profile/index/$1";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...