2009-10-22 2 views
0

Я просто изучаю codeigniter, и, похоже, я столкнулся с чем-то странным. Я использую функцию маршрутизации URI, но мне нужно получить сегменты URI перенаправленного URI.URI codeigniter library не работает

Это один из маршрутов:

$route['content'] = "site/display/main template/content"; 

и при посещении http://lipsum.localhost/content он загружает контроллер, но он не позволит мне использовать класс URI:

class Site extends Controller { 

    function display($template, $page) { 

     echo "display<br>"; 

     $this->load->library('uri'); 
     echo $this->uri->rsegment(1, 0)."<br>"; 
     echo $this->uri->rsegment(2, 0)."<br>"; 
     echo $this->uri->rsegment(3, 0)."<br>"; 
     echo $this->uri->rsegment(4, 0)."<br>"; 

    } 

} 

, когда я посещаю страницы, он просто отображает

 
display 
0 
0 
0 
0 

В основном этот код должен нагрузить шаблон, а затем pas s $page, чтобы он мог загрузить раздел веб-сайта. Таким образом, «контент» может использовать «основной шаблон» в качестве шаблона, а затем передавать «контент» ему в качестве загружаемой страницы. Но я также хочу иметь возможность передавать «/ products/whatever» на него и т. Д., Поэтому я хочу перебирать сегменты URI, чтобы получить полный «путь» к странице. Как я могу заставить его работать? И почему я не работаю?

ответ

3

Попробуйте избавиться от пространства в «основном шаблоне», используйте подчеркивание или верблюд. Соедините его вместе с «mainTemplate». Я не помню, как в прошлый раз я видел место в любом маршруте или URL-адресе.

0

, чтобы добавить пользовательские маршруты в файл /app/config/routes.php.

$route['title-of-the-page'] = "<controller>/<method>"; 
Смежные вопросы