контроллер кода - PullRequest
       1

контроллер кода

1 голос
/ 24 сентября 2010

Я хочу написать новый файл контроллера, например:

aaa.php

class aaa extends CI_Controller
{
    public function bbb()
    {
        // Stuff
    }
}

как я могу ввести bab (), aaa.php,

Файлы примеров начинаются с функции index () welcome.php.

как я могу изменить это, чтобы начать с моего нового файла контроллера?

Ответы [ 5 ]

2 голосов
/ 24 сентября 2010

Если вы ничего не предоставите базовому URL, CI всегда будет предполагать, что вы хотите действие index. Как localhost/foo вызовет действие index () foo. С localhost/foo/bar вы вызовете действие foo's bar (). Если вы хотите позвонить localhost и получить доступ к индексу foo (), вам необходимо убедиться, что $route['default_controller'] = 'foo'; правильно настроен в вашем config.php. (Если это не работает , проверьте .htaccess и index.php, чтобы добавить его вручную)

0 голосов
/ 18 июня 2013

Доступ к методам вашего контроллера в CodeIgniter осуществляется через URI. Маршрутизация по умолчанию:

example.com / контроллер / функция / param1 / * * 1004

Таким образом, чтобы получить доступ к методу aaa bbb (), вы должны получить доступ к следующему uri:

/ ааа / ГЭБ

Если вы хотите установить метод aaa bbb () в качестве страницы по умолчанию вашего приложения, есть две вещи, которые нужно сделать.

Сначала вы должны указать CodeIgniter для установки aaa в качестве контроллера по умолчанию

/* /application/config/routes.php */
$route['default_controller'] = "aaa";

После этого будет вызываться метод index () aaa при доступе к URL-адресу вашего базового сайта. Вы не можете указать CodeIgniter изменить метод по умолчанию для index () на что-то другое (без установки некоторых маршрутов), поэтому самый простой способ вызова bbb () по умолчанию будет выглядеть так:

/* /application/controllers/aaa.php */
class aaa extends CI_Controller
{
    public function index()
    {
        $this->bbb();
    }

    public function bbb()
    {
        // Stuff
    }
}
0 голосов
/ 25 сентября 2010

Как сказал Gsto, для вызова функции bbb введите url: mysite.com/aaa/bbb

Если вы хотите, чтобы mysite.com/aaa вызывал bbb () вместо index () по умолчанию, вам нужно создать функцию _remap () в aaa. php контроллер для вызова bbb ().
См .: Контроллеры CI - Функции Документы

0 голосов
/ 24 сентября 2010

Если вы хотите использовать функцию bbb контроллера aaa, просто введите это в URL:

www.mysite.com / ааа / ВВВ /

0 голосов
/ 24 сентября 2010

Вы хотите, чтобы отдельная функция выполнялась как функция контроллера по умолчанию? Почему бы просто не вызвать эту отдельную функцию из index()? Кроме того, я не совсем уверен, что вы спрашиваете ... user_guide CodeIgniter довольно обширный, если вы не просматривали его.

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