Важное замечание: неопределенная переменная - images_model

Этот код хорошо работает в представлении "images" в images_model:

<?php if($images_model):?>
    <?php foreach($images_model as $images):?>
        <div class="col-sm-4">
            <div class="well">

                <img src="<?php echo base_url()."uploads/".$images->name;?>" alt="" class="img-thumbnail">  

Код в images_model выглядит следующим образом:

function save_image($data){     
    $this->db->insert('images', $data);
}

Когда я пытаюсь использовать тот же код в представлении "стена" (main_controller), я получаю сообщение об ошибке серьезности, говоря, что "images_model" не определено; хотя я загружаю images_model в main_controller или автоматически загружаю обе модели:

$autoload['model'] = array('main_model', 'images_model');

Первоначально я подверг сомнению код "foreach" в представлении "изображения", но подумал, работает ли он в одном представлении, не должен ли он работать и в другом, если я загружаю соответствующую модель? Кажется, он просто не читает images_model.

Я только немного узнаю codeigniter и буду признателен за любые отзывы.

1 ответ

Решение

Вы передаете переменную $images_model в свой вид из вашего main_controller?

// Set your variable
$data['images_model'] = $images_model;

// Pass variable to view
$this->load->view('main', $data);

Обычно у вас не должно быть доступа к модели непосредственно в представлении (следуя принципам MVC). Ваш контроллер должен получить то, что он хочет от модели, а затем передать это в представление.

Другие вопросы по тегам