Lab / YII

Yii2: Шпаргалки по ActiveRecord

В этой шпаргалке я постараюсь привести как можно больше примеров применения класса ActiveRecord в примерах. Шпаргалка будет пополнятся со временем.

Пример запроса ActiveRecord к базе данных:

public static function tableName() // Подключаемся к БД и выбираем таблицу
{
 return 'blog'; // Имя таблицы
}
public static function getAll() // Составляем запрос
{
 $data = self::find()
 ->orderBy('id DESC') // Сортировка по ID в порядке убывания
 ->limit(10) // Вывести только 10 записей
 ->offset(1) // пропустить 1 запись
 ->all();
 return $data;
}

Пример реализации пагинатора:

$pagination = new Pagination([ // вызываем метод пагинации
 'defaultPageSize' =>2, // колл-во объектов на страницу
 'totalCount' => $rewiews->count() // получаем число записей в БД
]);

Так-же давайте рассмотрим пример создания ссылки на сущность в данном представлении:

<?php foreach ($rewiews as $item) : ?>
 <p><strong><a href="<?=Yii::$app->urlManager->createUrl(['site/user', 'name'=> $item->id])?>"><?=$item->name?></a></strong></p>
 <p><?=$item->text?></p>
<?php endforeach; ?>