Light777
@Light777
Developer

Как рандомно вывести записи с таблицы в Yii2?

Есть сайт на подобие простого блога.
Записи с бд выводятся на главную ленту постов.
Проблема в создании блока "Также интересное по теме"(бывают во всех блогах сбоку, ссылки на другие посты)
Не знаю как вывести рандомно записи с бд

В контроллере передаю во вьюшку все записи с бд
public function actionBlog()
    {
        $posts = Posts::find();
        $countQuery = clone $posts;
        $pages = new Pagination(['totalCount' => $countQuery->count(),
            'pageSize' => '2',]);
        $models = $posts->offset($pages->offset)
        ->limit($pages->limit)
        ->all();
        return $this->render('blog',[
           'models' => $models,
           'pages' => $pages,]);
    }


Во вьюшке ловлю все записи и вывожу в ленту вот так
<?php foreach( $models as $post): ?>
                    <li>
                        <div class="post-content">
                            <a href="<?= Url::toRoute(['blogpost', 'id' => $post['post_id']]);?>" title=<?=$post['post_title']?> class="post-image">
                                <img src=<?='/acs/backend/web/'.$post['post_photo'];?> alt="" style="display: block;">
                            </a>

                            <h2 class="box-header align-left"><a href="<?= Url::toRoute(['blogpost', 'id' => $post['post_id']]);?>"><?=$post['post_title']?></a></h2>
                            <p class="description t1"><?=$post['post_brief']?></p>
                            <div class="row padding-top-54 padding-bottom-17">
                                <a class="more" href="<?= Url::toRoute(['blogpost', 'id' => $post['post_id']]);?>" title="Подробнее">Подробнее</a>
                            </div>
                        </div>
                    </li>
                <?php endforeach ;?>
                <?php echo LinkPager::widget(['pagination' => $pages,]);?>
  • Вопрос задан
  • 726 просмотров
Пригласить эксперта
Ответы на вопрос 1
kawabanga
@kawabanga
->orderBy('RAND()') попробуйте при выборке моделей.
Ответ написан
Ваш ответ на вопрос

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

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