Как правильно получить данные из базы данных, используя представление для вызова контроллера? - PullRequest
0 голосов
/ 25 августа 2011

Я делаю программу, которая работает с несколькими таблицами (рецепт, инструкции о том, как сделать, указания и т. Д.), И я уже могу добавить новый рецепт и сохранить данные, предоставленные в форме ввода, в соответствующую таблицу, имеющую внешние ключи для связи каждого из них.

То, что я сделал, было после вставки нового рецепта, я бы получил последний идентификатор вставленного рецепта, затем получил его от модели к контроллеру и от контроллера, я бы передал идентификатор в представление следующим образом:

$data['recipe_id'] = $this->recipe_model->id;
$this->load->view('template', $data);

Тогда в представлении я смогу получить переданный идентификатор, просто выполнив:

<?php echo $recipe_id ?>

Я попытался напечатать удостоверение личности, и я получил правильный. Теперь мне было интересно, как передать идентификатор методу контроллера, чтобы я мог снова запросить информацию о новом рецепте и показать его мне, или мое решение неэффективно, и есть другой лучший способ решения это.

Если это так, я был бы рад услышать от вас. Заранее спасибо.

1 Ответ

1 голос
/ 25 августа 2011

Вы должны передать фактический объект модели вместо идентификатора:

$data['recipe'] = $this->recipe_model;
$this->load->view('template', $data);

Таким образом, нет необходимости перезванивать в контроллер, чтобы получить информацию о рецепте.

Если вы действительно настаиваете, вы можете реализовать функцию helper или library , которая использует объект CI для загрузки вашей модели, но вам гораздо проще просто скопировать сохраненный объект рецепта в виде данных.

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