 
				 
            Создание Доски объявлений с использованием фреймворка YII2.
Автор: Жданов В.В.
Данный курс - практикум по созданию сайта с использованием фреймворка YII2. 
Цель: создание небольшого сайта с нуля до "коробочного" варианта, готового к размещению на хостинге. 
Теории здесь не много, больше практической работы по принципу: "произвел действие - получил результат".
Также по максимуму используем функционал фреймворка YII2.
Программируем - и кайфуем!
| # | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ | 
|---|---|---|---|---|---|
| 1 |  О проекте и про инструменты |  | |||
| На этом уроке мы рассмотрим тематику разработки и настроим инструменты Отчёт отправил: 1232. Фомичева Наталья Выполнено за 1 день 22 час. 13 мин. [Показать отчёт] Научился: Устанавливать open server и netbeans | |||||
| 2 |  Создание проекта YII2 | 1 тест | |||
| На этом уроке мы создадим проект нового сайта, установим YII2 и запустим новый сайт на нашем локальном домене Отчёт отправил: 1232. Фомичева Наталья Выполнено за 43 мин. [Показать отчёт] Научился: Устанавливать yii2 | |||||
| 3 |  Комфортная конфигурация | 2 теста | |||
| На этом уроке мы настроим удобные для человека ссылки и поменяем название сайта при помощи настроек config/web.php Отчёт отправил: 1232. Фомичева Наталья Выполнено за 14 мин. [Показать отчёт] Научился: Делать человеко понятный url | |||||
| 4 |  Схема базы данных |  | |||
| На этом уроке мы создадим схему базы данных для нашего проекта Отчёт отправил: 1232. Фомичева Наталья Выполнено за 20 мин. [Показать отчёт] Научился: Определять сущности базы данных доски объявлений | |||||
| 5 |  Подключение к базе данных пользователя и миграция пользователей | 1 тест | |||
| На этом уроке мы создадим базу данных, подключим ее к нашему проекту и создадим таблицу пользователей при помощи механизма миграций Отчёт отправил: 1232. Фомичева Наталья Выполнено за 51 мин. [Показать отчёт] Научился: Создавать файл миграции таблицы пользователей и задавать необходимые поля При помощи миграции создать таблицу пользователей в базе данных | |||||
| 6 |  Аутентификация - захешированный пользователь из БД | 1 тест | |||
| На этом уроке мы подкорректируем модель User  и реализуем аутентификацию на сайте через базу данных Отчёт отправил: 1232. Фомичева Наталья Выполнено за 1 день 22 час. 7 мин. [Показать отчёт] Научился: создавать класс UserRecord вносить изменения в модель User добавлять при помощи phpmyadmin нового пользователя с md5-хешированным паролем | |||||
| 7 |  Информация о пользователе |  | |||
| На этом уроке создадим таблицу и модель Информация о пользователе Отчёт отправил: 1232. Фомичева Наталья Выполнено за 1 день 23 час. 3 мин. [Показать отчёт] Научился: добавлять в UserRecord метод связи с UserinfoRecord | |||||
| 8 |  MVC - немного теории | 1 тест | |||
| На этом уроке мы рассмотрим теоретические основы работы MVC и создадим новый контроллер в нашем проекте Отчёт отправил: 1232. Фомичева Наталья Выполнено за 1 день 23 час. 13 мин. [Показать отчёт] Научился: Создавать контроллер UserController и добавлять в него действие Index | |||||
| 9 | MVC - информация о пользователе |  | |||
| На этом уроке мы получим данные о пользователе из базы в представление Отчёт отправил: 1232. Фомичева Наталья Выполнено за 26 мин. [Показать отчёт] Научился: Получать данные о пользователе из бд и передавать полученную модель в представление | |||||
| 10 | Пользователь - кто зарегистрирован сейчас? | 1 тест | |||
| На этом уроке мы получим информацию о текущем зарегистрированном пользователе, а также сделаем рефакторинг кода Отчёт отправил: 1232. Фомичева Наталья Выполнено за 22 час. 1 мин. [Показать отчёт] Научился: получать данные сессии | |||||
| 11 | Новый пользователь - заготовка и меню |  | |||
| На этом уроке мы создадим действие и представление для добавления пользователя, а также добавим пункт меню "Регистрация" Отчёт отправил: 1232. Фомичева Наталья Выполнено за 21 час. 48 мин. [Показать отчёт] Научился: создавать пункт меню "Регистрация" | |||||
| 12 | Новый пользователь - модель для формы | 1 тест | |||
| На этом уроке мы создадим модель параметров формы добавления пользователя Отчёт отправил: 1232. Фомичева Наталья Выполнено за 1 день 16 мин. [Показать отчёт] Научился: Создавать метод rules() Задавать свойства параметра label 1-2 полей через attributeLabels() | |||||
| 13 | Новый пользователь - дизайн формы начало |  | |||
| На этом уроке мы зададим поля формы добавления пользователя Отчёт отправил: 1232. Фомичева Наталья Выполнено за 22 мин. [Показать отчёт] Научился: 1. добавлять библиотеки хелпера и bootstrap в представление 2. добавлять форму ввода 3. создавать поля ввода логина, пароля и подтверждения пароля | |||||
| 14 | Новый пользователь - дизайн формы: поля и колонки | 1 тест | |||
| На этом уроке мы добавим все поля формы, кнопку сохранения, а также разместим поля в две колонки Отчёт отправил: 1232. Фомичева Наталья Выполнено за 34 мин. [Показать отчёт] Научился: Делать форму регистрации нового пользователя | |||||
| 15 | Новый пользователь - сохранение нового пользователя | 1 тест | |||
| На этом уроке мы напишем алгоритм сохранения записи о пользователе и информации о нем Отчёт отправил: 1232. Фомичева Наталья Выполнено за 1 час. 5 мин. [Показать отчёт] Научился: Сохранять нового пользователя | |||||
| 16 | Красивая аутентификация на сайте |  | |||
| На этом уроке мы поменяем дизайн формы входа на сайт Отчёт отправил: 1232. Фомичева Наталья Выполнено за 21 мин. [Показать отчёт] Научился: Русифицировать поля формы | |||||
| 17 | Что доступно Юпитеру? | 1 тест | |||
| На этом занятии мы научимся управлять доступом к пунктам главного меню Отчёт отправил: 1232. Фомичева Наталья Выполнено за 28 мин. [Показать отчёт] Научился: 1. делать пункт меню "Contacts" видимым только авторизированным пользователям 2. делать пункт меню "Регистрация" видимым для гостевого доступа | |||||
| 18 | Объявления - создание базы и модели | 1 тест | |||
| На этом уроке мы создадим таблицу bulletins при помощи миграций и сгенерируем для данной таблицы класс ActiveRecord Отчёт отправил: 1232. Фомичева Наталья Выполнено за 43 мин. [Показать отчёт] Научился: Повторила создание базы и модели | |||||
| 19 | Объявления - контроллер, представление и много записей | 1 тест | |||
| На этом уроке мы создадим контроллер и представление для работы с объявлениями, а также сделаем связь записей о пользователях и объявлениях типа "один-ко-многим" Отчёт отправил: 1232. Фомичева Наталья Выполнено за 38 мин. [Показать отчёт] Научился: Делать связь записей о пользователях и объявлениях типа "один-ко-многим" | |||||
| 20 | Объявление - функциональный дизайн страницы |  | |||
| На этом уроке мы сделаем дизайн страницы наших объявлений, который поможет нам работать с объявлениями в дальнейшем Отчёт отправил: 1232. Фомичева Наталья Выполнено за 48 мин. [Показать отчёт] Научился: 1. добавлять панель вкладок на страницу index 2. определять названия каждой вкладки 3. заполнять содержимое контента каждой вкладки таблицей 4. создавать кнопку добавления объявлений | |||||
| 21 | Объявление - ограничение доступа |  | |||
| На этом уроке мы ограничим доступ неавторизированного пользователя к странице управления объявлениями, а также решим некоторые технические вопросы Отчёт отправил: 1232. Фомичева Наталья Выполнено за 1 час. 34 мин. [Показать отчёт] Научился: 1. добавлять код ограничения доступа к странице управления объявления 2. делать заготовку объявления в таблице на вкладке "Черновик" | |||||
| 22 | Объявление - поля для пользовательских форм |  | |||
| На этом уроке мы создадим класс BulletinsForm и определим, какие поля будут использоваться при создании объявления Отчёт отправил: 1232. Фомичева Наталья Выполнено за 24 мин. [Показать отчёт] Научился: разрабатывать методы rules() и attributeLabels() | |||||
| 23 | Объявление - форма добавления объявлений | 1 тест | |||
| На этом уроке мы создадим представление для добавления объявлений и действие контроллера, запускающего это представление Отчёт отправил: 1232. Фомичева Наталья Выполнено за 1 час. 14 мин. [Показать отчёт] Научился: Создали представление для добавления объявлений и действие контроллера, запускающего это представление | |||||
| 24 | Объявление - сохранение в черновик |  | |||
| На этом уроке мы реализуем механизм сохранения нового объявления в черновик Отчёт отправил: 1232. Фомичева Наталья Выполнено за 53 мин. [Показать отчёт] Научился: 1. создали алгоритм работы контроллера при получении данных методом POST 2. создали метод добавления новой записи в BulletinsRecord | |||||
| 25 | Объявление - список |  | |||
| На этом уроке мы реализуем вывод сохраненных в базе объявлений в список Отчёт отправил: 1232. Фомичева Наталья Выполнено за 56 мин. [Показать отчёт] Научился: 1. получили три выборки: объявления в статусе "Черновик", опубликованные и удаленные объявления 2. сделали алгоритм вывода каждой выборки в соответствующей вкладке представления index | |||||
| 26 | Объявление - всё на публику | 1 тест | |||
| На этом уроке мы сделаем наши объявления опубликованными Отчёт отправил: 1232. Фомичева Наталья Выполнено за 33 мин. [Показать отчёт] Научился: Публиковать объявления | |||||
| 27 | Объявление - публикация на главной странице | 1 тест | |||
| На этом уроке мы разместим наши опубликованные объявления на главной странице сайта Отчёт отправил: 1232. Фомичева Наталья Выполнено за 46 мин. [Показать отчёт] Научился: Размещать опубликованные объявления на главной странице сайта | |||||
| 28 | Объявление - скрыть нельзя удалить |  | |||
| На этом уроке мы реализуем возможность помещать объявления в группу удаленных, восстанавливать их оттуда, а также отключать их просмотр Отчёт отправил: 1232. Фомичева Наталья Выполнено за 34 мин. [Показать отчёт] Научился: Удалять, восстанавливать и отключать просмотр объявлений | |||||
| 29 | Объявление - статусный рефакторинг | 1 тест | |||
| НА этом уроке мы сделаем рефакторинг методов работы со статусом объявлений Отчёт отправил: 1232. Фомичева Наталья Выполнено за 24 мин. [Показать отчёт] Научился: Выносить повторяющиеся действия в отдельный метод SetStatus. Также повторяется следующий код: $wait_bulletins = BulletinsRecord::find() ->where(['user_id'=>$currSession['__id']]) ->andWhere(['status'=>'wait']) ->all(); | |||||
| 30 | Объявление - рефакторинг редактирования |  | |||
| На этом уроке мы реализуем редактирование путем небольшого видоизменения функции добавления записи Отчёт отправил: 1232. Фомичева Наталья Выполнено за 1 час. 1 мин. [Показать отчёт] Научился: Редактировать и сохранять объявления | |||||
| 31 | Объявление: запрос - в функцию & кнопка для изображений |  | |||
| На этом уроке мы сделаем рефакторинг метода index и добавим кнопки для перехода в режим работы с изображениями Отчёт отправил: 1232. Фомичева Наталья Выполнено за 1 час. 48 мин. [Показать отчёт] Научился: Рефакторить код и создавать кнопочки фото | |||||
| 32 | Изображения - микс из миграций |  | |||
| На этом уроке мы через механизм миграций создадим таблицу photo и добавим поле для аватары в таблицу bulletins Отчёт отправил: 1232. Фомичева Наталья Выполнено за 1 час. 3 мин. [Показать отчёт] Научился: добавлять поле avatar в таблицу bulletins | |||||
| 33 | Изображения - снова MVC |  | |||
| На этом уроке мы создадим модель, контролер и представление для работы с фото Отчёт отправил: 1232. Фомичева Наталья Выполнено за 9 час. 25 мин. [Показать отчёт] Научился: Связи один ко многим | |||||
| 34 | Изображения - работа с моделью |  | |||
| На этом уроке мы передадим модель нашего объявления в представление Отчёт отправил: 1232. Фомичева Наталья Выполнено за 9 час. 16 мин. [Показать отчёт] Научился: передавать объявление в представление | |||||
| 35 | Работаем над ошибками - YII2 в помощь |  | |||
| На этом уроке мы разберемся, как работать над ошибками и читать сигналы дебаггера YII2 Отчёт отправил: 1232. Фомичева Наталья Выполнено за 30 мин. [Показать отчёт] Научился: Исправлять ошибки. Забыла поставить скобки в one() | |||||
| 36 | Изображения - где живут картинки | 1 тест | |||
| На этом уроке мы создадим папку для изображений, разместим там изображение по умолчанию, а также создадим универсальные параметры пути и изображения по умолчанию Отчёт отправил: 1232. Фомичева Наталья Выполнено за 1 день 11 час. 19 мин. [Показать отчёт] Научился: выводить изображение по умолчанию на главной странице | |||||
| 37 | Изображения - модель формы |  | |||
| На этом уроке мы создадим модель PhotoForm для работы с изображениями Отчёт отправил: 1232. Фомичева Наталья Выполнено за 26 мин. [Показать отчёт] Научился: Создавать класс PhotoForm | |||||
| 38 | Изображение - загрузочное представление |  | |||
| На этом занятии мы создадим форму представления, через которое будет загружаться изображение Отчёт отправил: 1232. Фомичева Наталья Выполнено за 42 мин. [Показать отчёт] Научился: Создавать форму добавления картинки | |||||
| 39 | Изображение - загрузка файла на сайт | 1 тест | |||
| На этом уроке мы реализуем алгоритм загрузки изображений на сайт Отчёт отправил: 1232. Фомичева Наталья Выполнено за 1 час. 23 мин. [Показать отчёт] Научился: Загружать файлы с картинками | |||||
| 40 | ПРОМЕЖУТОЧНЫЙ ВИДЕО ОБЗОР | без видео | |||
| Мы уже многое сделали на нашем видеокурсе, и автору очень важно узнать Ваше мнение о данном курсе и получить обратную связь в форме видео-презентации и ответов на вопросы. Сделай видео-презентацию своего сайта. | |||||
| 41 | Изображение - сохранение пути в базу |  | |||
| На этом уроке мы реализуем сохранение пути к файлу изображений в базу данных | |||||
| 42 | Изображение - управление картинками |  | |||
| На этом уроке мы займемся дизайном - создадим выпадающее меню управления изображением | |||||
| 43 | Изображение - JS - немного теории и пижонства | 1 тест | |||
| На этом уроке мы рассмотрим работу JS на yii2 | |||||
| 44 | Изображение - JS - глобализация |  | |||
| На этом уроке мы перенесем все скрипты JS в отдельный файл, а также реализуем открытие и скрытие элементов ввода информации | |||||
| 45 | Изображение - JS - сохранение информации в базу | 1 тест | |||
| На этом уроке мы научим нашу систему сохранять информацию об изображениях в базу с использованием технологии ajax | |||||
| 46 | Изображение - JS - извлечение методом ajax |  | |||
| На этом уроке мы научим ajax получать информацию об изображениях из базы | |||||
| 47 | Изображение - аватарка - вывод на главной странице |  | |||
| На этом уроке мы реализуем вывод главных изображений каждого объявления (далее - аватарки) на главной странице | |||||
| 48 | Изображение - аватарка - работа над ошибками связей |  | |||
| На данном уроке мы исправим ошибки вывода фотографий, очистим базу и заново загрузим в нашу базу фотографии в одно из объявлений | |||||
| 49 | Изображение - аватарка - как стать главной |  | |||
| На этом уроке мы создадим код, делающий любое фото главным | |||||
| 50 | Изображение - удаление - ни шагу без подтверждения! |  | |||
| На этом уроке мы реализуем всплывающее окно подтверждения действия и протестируем результаты выбора различных вариантов | |||||
| 51 | Изображение - удаление - удаление файла и записи |  | |||
| На этом уроке мы реализуем удаление файлов изображений и записей о них из базы данных | |||||
| 52 | Главная страница - подробности - ссылки и заготовка представлени |  | |||
| На этом уроке мы создадим ссылки для объявлений на главной странице и заготовку представления для подробного вывода информации объявления | |||||
| 53 | Главная страница - подробности - больше подробностей |  | |||
| На этом уроке мы выведем максимум информации на страницу подробностей объявления | |||||
| 54 | Главная страница - подробности - расширяя информацию | 1 тест | |||
| На этом уроке мы внесем в наш код изменения, которые позволят сохранять объявления с большим количеством информации | |||||
| 55 | Главная страница - оформление - дизайн объявления |  | |||
| На этом уроке мы зададим стиль дизайна объявления | |||||
| 56 | Главная страница - оформление - дизайн элементов базовой страницы | 1 тест | |||
| На этом уроке мы выведем информацию о себе в элементе footer и сделаем главное меню стильным и красивым | |||||
| 57 | Главная страница - оформление - ловим цвет пикселя |  | |||
| На этом уроке мы рассмотрим использование инструментов определения цвета пикселя (Пипетка) | |||||
| 58 | Главная страница - оформление - смотрим все изображения |  | |||
| На этом уроке мы реализуем просмотр всех изображений объявления "не хуже, чем на Avito" | |||||
| 59 | Главная страница - оформление - стильный логотип |  | |||
| На этом уроке мы реализуем вывод логотипа в иконку проекта и в пункт меню перехода на главную страницу | |||||
| 60 | Главная страница - оформление - оповещения через баннер |  | |||
| На этом уроке мы создадим баннер для оповещений, новостей | |||||
| 61 | Разделы (темы) - немного теории |  | |||
| На этом уроке мы рассмотрим вопрос тематик объявлений на нашем сайте, а также составим план (структуру) таблицы тем Themes и связующей таблицы ThemesBulletins | |||||
| 62 | Разделы (темы) - миграции с внешними ключами |  | |||
| На этом уроке мы создадим миграции таблиц themes и themesbulletins, сами эти таблицы и их модели ActiveRecord с внешними связями | |||||
| 63 | Обратная связь - мозговой штурм - внештатные ситуации |  | |||
| В данном уроке попрошу Вас выполнить небольшую самостоятельную работу и дать обратную связь. | |||||
| 64 | Разделы (темы) - вывод тем в объявлении |  | |||
| На этом уроке мы реализуем вывод тем на странице объявления | |||||
| 65 | Разделы (темы) - меню тематик |  | |||
| На этом уроке мы реализуем вывод ссылок на темы на главной странице и подсчет объявлений в каждой теме | |||||
| 66 | Разделы (темы) - тематические выборки |  | |||
| На этом уроке мы реализуем выбор объявлений по темам и вывод их на основную страницу | |||||
| 67 | Разделы (темы) - полезные переходы |  | |||
| На этом уроке мы реализуем возвращение со страницы объявлений на предыдущую страницу, а также переходы по темам объявления по типу хештегов | |||||
| 68 | Разделы (темы) - администрирование - теория и заготовки |  | |||
| На этом уроке мы создадим контроллер для администрирования разделов (тем) и представление index | |||||
| 69 | Разделы (темы) - администрирование - все темы в таблицу |  | |||
| На этом уроке мы выведем существующие темы в таблицу и зададим им элементы управления | |||||
| 70 | Разделы (темы) - администрирование - подтверждение удаления |  | |||
| На этом уроке мы реализуем алгоритм подтверждения удаления и создадим соответствующее представление | |||||
| 71 | Разделы (темы) - администрирование - удаление разделов и чистка связей |  | |||
| На этом уроке мы окончательно удалим раздел, а перед этим удалим все его связи с объявлениями | |||||
| 72 | Разделы (темы) - администрирование - Обычный ThemesForm |  | |||
| На этом уроке мы создадим модель ThemesForm, заготовку действия Add в контроллере Themes и представление под него | |||||
| 73 | Разделы (темы) - исправление подсчета и отображение текущей темы |  | |||
| Hа этом уроке мы исправим ошибку подсчета, обнаруженную в процессе прохождения курса, а также отобразим текущую тему, по которой выборка объявлений, в баннере | |||||
| 74 | Разделы (темы) - администрирование - "темное" представление |  | |||
| На этом уроке мы создадим поля для редактирования или добавления темы в представлении themes\add | |||||
| 75 | Разделы (темы) - администрирование - волшебный выпадающий список | 1 тест | |||
| На этом уроке мы создадим выпадающий список выбора родительской темы | |||||
| 76 | Разделы (темы) - администрирование - сохранение темы |  | |||
| На этом уроке мы реализуем сохранение добавляемых и редактируемых тем | |||||
| 77 | Разделы (темы) - администрирование - рефакторинг и валидация |  | |||
| На этом уроке мы сделаем рефакторинг нашего представления add и валидацию данных формы ThemesForm | |||||
| 78 | Связи объявлений и тем - заготовка |  | |||
| На этом уроке мы создадим действие в контроллере BulletinsController и представление, которые помогут нам работать со связями объявлений и тем | |||||
| 79 | Связи объявлений и тем - добавление новой темы |  | |||
| На этом уроке мы научим нашу систему добавлять новую тему в объявление (делать связь темы и объявления) | |||||
| 80 | Связи объявлений и тем - темы, которых не было | 1 тест | |||
| На этом уроке мы научим нашу систему выводить в список добавляемых в объявление тем только те, которые не прикреплены к нашему объявлению | |||||
| 81 | Связи объявлений и тем - темы, которых не будет |  | |||
| На этом уроке мы научим нашу систему удалять из объявлений темы, к которым наше объявление привязывать не надо | |||||
| 82 | Глобальный поиск - поле поиска в меню |  | |||
| На этом уроке мы добавим поле поиска в навигационное меню сайта, а также решим вопрос с активными пунктами меню. | |||||
| 83 | Глобальный поиск - ищем глобально |  | |||
| На этом уроке мы создадим алгоритм поиска по вводимому в поле search контенту | |||||
| 84 | Расширенный поиск - группировка пунктов главного меню |  | |||
| На этом уроке мы сгруппируем пункты главного меню в подразделы, и сделаем в нем ссылку на страницу расширенного поиска | |||||
| 85 | Расширенный поиск - заготовки и план |  | |||
| На этом уроке мы набросаем план будущей страницы расширенного поиска, а также создадим действие контроллера и заготовку представления расширенного поиска | |||||
| 86 | Расширенный поиск - стили и форма |  | |||
| На этом уроке мы внесем исправления в стили субменю и сделаем модель формы расширенного поиска | |||||
| 87 | Расширенный поиск - дизайн текстовых полей и кнопки |  | |||
| На этом уроке мы прокачаем навыки дизайна текстовых полей, создания активной формы в представлении, а также создания кнопки через хелперы yii2 | |||||
| 88 | Расширенный поиск - цена - выбор варианта |  | |||
| На этом уроке мы создадим систему управления выбором варианта поиска по цене | |||||
| 89 | Расширенный поиск - цена - невидимые поля |  | |||
| На этом уроке мы создадим невидимые блоки с полями поиска цены, которые становятся видимыми при нажатии определенного пункта навигатора | |||||
| 90 | Расширенный поиск - дата публикации - виджет извне |  | |||
| На этом уроке мы установим в наш проект компонент jui от стороннего разработчика и создадим календарики для выбора дат | |||||
| 91 | Расширенный поиск - результаты выборки - частичное представление |  | |||
| На этом уроке мы рассмотрим возможность использования частичного представления в yii2-проекте и выведем в частичное представление карточку объявления | |||||
| 92 | Расширенный поиск - генератор поиска - возвращение к SQL-запросу |  | |||
| На этом уроке мы создадим генератор отчета, используя работу ActiveRecord фреймворка yii2 c sql-запросами, и включим в него поиск по текстовым полям формы расширенного поиска | |||||
| 93 | Расширенный поиск - генератор поиска - ограничивающие даты |  | |||
| На этом уроке мы добавим в генератор отчета расширенного поиска выборку по датам публикации | |||||
| 94 | Расширенный поиск - генератор поиска - три вида цены и один POST |  | |||
| На этом уроке мы реализуем различные варианты выборки объявлений по цене и добавим их в наш генератор расширенного поиска | |||||
| 95 | Обратная связь - свой сайт объявлений | без видео | |||
| И снова обратная связь.Подумаем самостоятельно и ответим на вопросы: | |||||
| 96 | Расширенный поиск - генератор поиска - показать, что нужно |  | |||
| На этом уроке мы реализуем отображение той вкладки поиска по ценам, по которой производился поиск | |||||
| 97 | Работа с документацией Yii2 |  | |||
| На этом уроке переходим на один из официальных сайтов по Yii2 и, пользуясь помощью документации, реализовываем одну из своих идей | |||||
| 98 | Пользователи и роли - планирование ролевой модели |  | |||
| На этом уроке мы составим ролевую модель пользователей нашего сайта | |||||
| 99 | Пользователи и роли - фильтры контроля доступа ACF - теория и эксперименты |  | |||
| На этом уроке мы рассмотрим принципы работы фильтров контроля доступа ACF | |||||
| 100 | Пользователи и роли - фильтры контроля доступа ACF - фильтруем всё |  | |||
| На этом уроке мы сами создадим метод behaviors() в BulletinsController и зададим нужные фильтры для действий контроллера | |||||
| 101 | Пользователи и роли - роли через RBAC - теория, установка и миграции |  | |||
| На этом уроке мы установим расширение RBAC, настроим подключение к RBAC и создадим базы для авторизации при помощи механизма миграции | |||||
| 102 | Пользователи и роли - роли через RBAC - тесты и практика |  | |||
| На этом уроке мы создадим тестовые роли и разрешения, а также проверим работу контроллера согласно разрешений | |||||
| 103 | Пользователи и роли - роли через RBAC - вносим действия в план |  | |||
| На этом уроке мы добавим действия к ролям в нашей актуальной ролевой модели | |||||
| 104 | Пользователи и роли - роли через RBAC - реализация плана |  | |||
| На этом уроке мы создадим актуальные роли и действия для пользователей нашего сайта | |||||
| 105 | Пользователи и роли - ACF+RBAC - ограничим доступ к темам |  | |||
| На этом уроке мы реализуем ролевую модель для контроллера тем | |||||
| 106 | Пользователи и роли - управление ролями и привилегиями - контроллер и таблица ролей |  | |||
| на этом уроке мы создадим контроллер и представление для управления ролями | |||||
| 107 | Пользователи и роли - управление ролями и привилегиями - форма добавления роли |  | |||
| На этом уроке мы создадим действие добавления роли и форму добавления роли | |||||
| 108 | Пользователи и роли - управление ролями и привилегиями - сохранение и удаление роли |  | |||
| На этом уроке мы реализуем сохранение роли, а также напишем алгоритм удаления роли | |||||
| Итого: 108 видеоуроков | 23 час. 33 мин. 25 тестов | 3 чел. | |||
| Финалисты: Жан, Николай Денисов, Tom . | |||||