Проблема просмотра CodeIgniter - PullRequest
0 голосов
/ 15 июня 2011

Это мой первый день, когда я играю с CI, и мне это очень нравится, но есть проблема, которую я не могу решить самостоятельно.Проблема в том, что мне нужно создать один вид с двумя функциями контроллера.Один div должен включать выбранную строку по идентификатору из таблицы A, а другой div должен выполнять цикл foreach для массива из таблицы B.

    public function index()//div A
{
            $data['query'] = $this->db->get_where('beer', array('id' => 1));
    $this->load->view('corp/corp_view', $data);     
}

public function loadList() //div B
{
    $data['q'] = $this->db->get_where('list', array('id' => 1));
    $this->load->view('corp/mentor_list_view', $data);
}   

Я пытался решить эту проблему в течение нескольких часов, создав другое представление для loadList (), а затемвключив его в основное представление, например «$ this-> load-> view ()», но я получаю значения из таблицы запросов функции index () «пиво», а не «список», как предполагалось.Опять же, я новичок в этом и был бы признателен за вашу помощь.

Спасибо за вашу помощь.

1 Ответ

2 голосов
/ 15 июня 2011

Спасибо за дополнительную информацию, я могу помочь вам сейчас.

В Codeigniter, если вы хотите создать функцию, которую пользователь не может вызвать, просто поставьте перед ней '_'Итак, в вашем случае:

public function index()//div A
{
    $data['query'] = $this->db->get_where('beer', array('id' => 1));
    $data['query2'] = $this->_mySecondQuery();
    $this->load->view('corp/corp_view', $data);     
}

public function _mySecondQuery() //div B
{
    return $this->db->get_where('list', array('id' => 1));
}

Теперь на странице индекса у вас есть доступ к обоим запросам.Кстати, я бы не советовал делать много работы с БД в контроллере.Работа с БД должна выполняться в моделях.Для получения дополнительной информации о них см .: Модели Codeigniter

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