Как вывести изображения в Yii2 Carousel?

Подскажите как вывести изображения из базы данных, как это делать через controller?

Вывод слайдер в Views.
<div class="row">
    <?php echo Carousel::widget([
        'items' => [

            [
                'content' => '<img style="" src="uploads/1.jpg"/>',
                'caption' => '<h2>Yii Gii</h2><p>Удобный встроенный генератор кода. Модули, модели на основе таблиц в БД и, конечно же, CRUD</p>',
                'options' => ['style' => 'height:500px;']
            ],
            [
                'content' => '<img style="" src="uploads/2.jpg"/>',
                'caption' => '<h2>Yii Gii</h2><p>Удобный встроенный генератор кода. Модули, модели на основе таблиц в БД и, конечно же, CRUD</p>',
                'options' => ['style' => 'height:500px;']
            ],
            [
                'content' => '<img style="" src="uploads/3.jpg"/>',
                'caption' => '<h2>Yii Gii</h2><p>Удобный встроенный генератор кода. Модули, модели на основе таблиц в БД и, конечно же, CRUD</p>',
                'options' => ['style' => 'height:500px;']
            ],
        ],
        'options' => [
            'style' => 'width:100%; padding-top:51px' // Задаем ширину контейнера
        ]
    ]);
    ?>
</div>
  • Вопрос задан
  • 1002 просмотра
Решения вопроса 1
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
Сформировать массив $items в контроллере, передать во вью, а от туда в виджет:
$items = [];
foreach(MySomeModel::find()->all() as $one){
$items[] =  [
                'content' => Html::img($one->imageUrl),
                'caption' => $one->title,
                'options' => ['style' => 'height:500px;']
            ],
}
return $this->render('someMyView',['items'=>$items]);

<div class="row">
    <?php echo Carousel::widget([
        'items' => $items,
        'options' => [
            'style' => 'width:100%; padding-top:51px' // Задаем ширину контейнера
        ]
    ]);
    ?>
</div>
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Batiss Автор вопроса
Я
А как задать количество изображений?

Допустим что бы за 1 показ 2 изображения было?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы