Обучение C#

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.
Open shop Доска объявлений

Доска объявлений

Создание Доски объявлений с использованием фреймворка YII2.

Автор: Жданов В.В.

Данный курс - практикум по созданию сайта с использованием фреймворка YII2.
Цель: создание небольшого сайта с нуля до "коробочного" варианта, готового к размещению на хостинге.
Теории здесь не много, больше практической работы по принципу: "произвел действие - получил результат".
Также по максимуму используем функционал фреймворка YII2.

Программируем - и кайфуем!



Список уроков | фото | видео

# Название видеоурока Видео / Тесты Решило Рейтинг Доступ
1 FREE О проекте и про инструменты 00:08:31
26 чел. ★ 4.8 Free
  На этом уроке мы рассмотрим тематику разработки и настроим инструменты

 
11019. Trira
13417. Chip
13417. Chip
11582. Родион
2 FREE Создание проекта YII2 00:13:49
1 тест
22 чел. ★ 4.8 Free
  На этом уроке мы создадим проект нового сайта, установим YII2 и запустим новый сайт на нашем локальном домене

 
13417. Chip
13417. Chip
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
3 FREE Комфортная конфигурация 00:08:16
2 теста
21 чел. ★ 4.8 Free
  На этом уроке мы настроим удобные для человека ссылки и поменяем название сайта при помощи настроек config/web.php
 
11589. Yefim
28410. Alim
11019. Trira
11019. Trira
4 FREE Схема базы данных 00:14:25
21 чел. ★ 4.8 Free
  На этом уроке мы создадим схему базы данных для нашего проекта
 
30514. Tom
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
28410. Alim
5 FREE Подключение к базе данных пользователя и миграция пользователей 00:13:36
1 тест
21 чел. ★ 4.8 Free
  На этом уроке мы создадим базу данных, подключим ее к нашему проекту и создадим таблицу пользователей
при помощи механизма миграций
 
11589. Yefim
11589. Yefim
21714. grom518
21714. grom518
6 FREE Аутентификация - захешированный пользователь из БД 00:16:58
1 тест
20 чел. ★ 4.8 Free
  На этом уроке мы подкорректируем модель User  и реализуем аутентификацию на сайте через базу данных
 
1232. Фомичева Наталья
28410. Alim
28410. Alim
13417. Chip
7 FREE Информация о пользователе 00:13:28
19 чел. ★ 4.8 Free
  На этом уроке создадим таблицу и модель Информация о пользователе
 
24765. Anatoli
689. Igorenzia
6203. Николай Миролюбов
17947. Dmitry Sinitsin
8 FREE MVC - немного теории 00:12:09
1 тест
19 чел. ★ 4.8 Free
  На этом уроке мы рассмотрим теоретические основы работы MVC и создадим новый контроллер в нашем проекте
 
8275. Tekashnik
9014. Николай Денисов
9014. Николай Денисов
17947. Dmitry Sinitsin
9 MVC - информация о пользователе 00:09:33
18 чел. ★ 5 ^
  На этом уроке мы получим данные о пользователе из базы в представление
 
30514. Tom
6203. Николай Миролюбов
24765. Anatoli
25475. Жан
10 Пользователь - кто зарегистрирован сейчас? 00:09:22
1 тест
18 чел. ★ 4.9 ^
  На этом уроке мы получим информацию о текущем зарегистрированном пользователе, а также сделаем рефакторинг кода
 
28410. Alim
28410. Alim
11589. Yefim
24765. Anatoli
11 Новый пользователь - заготовка и меню 00:09:17
18 чел. ★ 5 ^
  На этом уроке мы создадим действие и представление для добавления пользователя,
а также добавим пункт меню "Регистрация"
 
25475. Жан
11589. Yefim
6203. Николай Миролюбов
9014. Николай Денисов
12 Новый пользователь - модель для формы 00:15:43
1 тест
18 чел. ★ 5 ^
  На этом уроке мы создадим модель параметров формы добавления пользователя
 
24765. Anatoli
2146. Иван
28410. Alim
28410. Alim
13 Новый пользователь - дизайн формы начало 00:16:37
18 чел. ★ 5 ^
  На этом уроке мы зададим поля формы добавления пользователя
 
21753. Николай
689. Igorenzia
689. Igorenzia
6203. Николай Миролюбов
14 Новый пользователь - дизайн формы: поля и колонки 00:09:17
1 тест
18 чел. ★ 5 ^
  На этом уроке мы добавим все поля формы, кнопку сохранения, а также разместим поля в две колонки

 
6203. Николай Миролюбов
2146. Иван
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
15 Новый пользователь - сохранение нового пользователя 00:20:06
1 тест
18 чел. ★ 5 ^
  На этом уроке мы напишем алгоритм сохранения записи о пользователе и информации о нем
 
8275. Tekashnik
25475. Жан
13417. Chip
13417. Chip
16 Красивая аутентификация на сайте 00:07:37
18 чел. ★ 5 ^
  На этом уроке мы поменяем дизайн формы входа на сайт
 
21714. grom518
18842. Степан
1232. Фомичева Наталья
11589. Yefim
17 Что доступно Юпитеру? 00:10:21
1 тест
18 чел. ★ 5 ^
  На этом занятии мы научимся управлять доступом к пунктам главного меню
 
13417. Chip
13417. Chip
2146. Иван
11589. Yefim
18 Объявления - создание базы и модели 00:09:51
1 тест
18 чел. ★ 5 ^
  На этом уроке мы создадим таблицу bulletins при помощи миграций и сгенерируем для данной таблицы класс ActiveRecord
 
24765. Anatoli
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
13417. Chip
19 Объявления - контроллер, представление и много записей 00:13:46
1 тест
18 чел. ★ 5 ^
  На этом уроке мы создадим контроллер и представление для работы с объявлениями,
а также сделаем связь записей о пользователях и объявлениях типа "один-ко-многим"
 
26052. Артём
28410. Alim
28410. Alim
6203. Николай Миролюбов
20 Объявление - функциональный дизайн страницы 00:14:17
17 чел. ★ 5 ^
  На этом уроке мы сделаем дизайн страницы наших объявлений, который поможет нам работать с объявлениями в дальнейшем
 
8275. Tekashnik
25475. Жан
689. Igorenzia
2146. Иван
21 Объявление - ограничение доступа 00:09:25
17 чел. ★ 5 ^
  На этом уроке мы ограничим доступ неавторизированного пользователя к странице управления объявлениями, а также решим некоторые технические вопросы
 
21753. Николай
1232. Фомичева Наталья
9014. Николай Денисов
9014. Николай Денисов
22 Объявление - поля для пользовательских форм 00:09:44
17 чел. ★ 5 ^
  На этом уроке мы создадим класс BulletinsForm и определим, какие поля будут использоваться при создании объявления
 
2146. Иван
8275. Tekashnik
26052. Артём
13417. Chip
23 Объявление - форма добавления объявлений 00:17:03
1 тест
17 чел. ★ 5 ^
  На этом уроке мы создадим представление для добавления объявлений и действие контроллера, запускающего это представление
 
1232. Фомичева Наталья
6203. Николай Миролюбов
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
24 Объявление - сохранение в черновик 00:10:39
17 чел. ★ 5 ^
  На этом уроке мы реализуем механизм сохранения нового объявления в черновик
 
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
21753. Николай
689. Igorenzia
25 Объявление - список 00:18:42
15 чел. ★ 5 ^
  На этом уроке мы реализуем вывод сохраненных в базе объявлений в список
 
1232. Фомичева Наталья
689. Igorenzia
11589. Yefim
28410. Alim
26 Объявление - всё на публику 00:12:16
1 тест
15 чел. ★ 5 ^
  На этом уроке мы сделаем наши объявления опубликованными
 
25475. Жан
21714. grom518
11582. Родион
11582. Родион
27 Объявление - публикация на главной странице 00:15:27
1 тест
15 чел. ★ 5 ^
  На этом уроке мы разместим наши опубликованные объявления на главной странице сайта
 
1232. Фомичева Наталья
8275. Tekashnik
689. Igorenzia
30514. Tom
28 Объявление - скрыть нельзя удалить 00:12:40
14 чел. ★ 5 ^
  На этом уроке мы реализуем возможность помещать объявления в группу удаленных, восстанавливать их оттуда, а также отключать их просмотр
 
689. Igorenzia
13417. Chip
13417. Chip
25475. Жан
29 Объявление - статусный рефакторинг 00:08:45
1 тест
14 чел. ★ 5 ^
  НА этом уроке мы сделаем рефакторинг методов работы со статусом объявлений
 
9014. Николай Денисов
9014. Николай Денисов
689. Igorenzia
25475. Жан
30 Объявление - рефакторинг редактирования 00:12:58
14 чел. ★ 5 ^
  На этом уроке мы реализуем редактирование путем небольшого видоизменения функции добавления записи
 
25475. Жан
9014. Николай Денисов
9014. Николай Денисов
13417. Chip
31 Объявление: запрос - в функцию & кнопка для изображений 00:09:52
14 чел. ★ 5 ^
  На этом уроке мы сделаем рефакторинг метода index и добавим кнопки для перехода в режим работы с изображениями
 
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
18842. Степан
18842. Степан
32 Изображения - микс из миграций 00:12:35
14 чел. ★ 5 ^
  На этом уроке мы через механизм миграций создадим таблицу photo и добавим поле для аватары в таблицу bulletins
 
21714. grom518
13417. Chip
13417. Chip
11582. Родион
33 Изображения - снова MVC 00:10:47
14 чел. ★ 5 ^
  На этом уроке мы создадим модель, контролер и представление для работы с фото
 
11582. Родион
11582. Родион
18842. Степан
18842. Степан
34 Изображения - работа с моделью 00:17:16
14 чел. ★ 5 ^
  На этом уроке мы передадим модель нашего объявления в представление
 
689. Igorenzia
8275. Tekashnik
2146. Иван
21753. Николай
35 Работаем над ошибками - YII2 в помощь 00:13:03
14 чел. ★ 5 ^
  На этом уроке мы разберемся, как работать над ошибками и читать сигналы дебаггера YII2
 
689. Igorenzia
21753. Николай
11582. Родион
21714. grom518
36 Изображения - где живут картинки 00:15:34
1 тест
14 чел. ★ 5 ^
  На этом уроке мы создадим папку для изображений, разместим там изображение по умолчанию, а также создадим универсальные параметры пути и изображения по умолчанию
 
689. Igorenzia
21753. Николай
30514. Tom
30514. Tom
37 Изображения - модель формы 00:11:10
14 чел. ★ 5 ^
  На этом уроке мы создадим модель PhotoForm для работы с изображениями
 
2146. Иван
13417. Chip
13417. Chip
30514. Tom
38 Изображение - загрузочное представление 00:15:37
14 чел. ★ 5 ^
  На этом занятии мы создадим форму представления, через которое будет загружаться изображение
 
21714. grom518
689. Igorenzia
9014. Николай Денисов
9014. Николай Денисов
39 Изображение - загрузка файла на сайт 00:17:29
1 тест
14 чел. ★ 5 ^
  На этом уроке мы реализуем алгоритм загрузки изображений на сайт
 
11582. Родион
11582. Родион
30514. Tom
30514. Tom
40 ПРОМЕЖУТОЧНЫЙ ВИДЕО ОБЗОР без видео
11 чел. ★ 5 ^
  Мы уже многое сделали на нашем видеокурсе, и автору очень важно
узнать Ваше мнение о данном курсе и получить обратную связь
в форме видео-презентации и ответов на вопросы.

Сделай видео-презентацию своего сайта.
 
8275. Tekashnik
11589. Yefim
25475. Жан
25475. Жан
41 Изображение - сохранение пути в базу 00:14:17
11 чел. ★ 5 ^
  На этом уроке мы реализуем сохранение пути к файлу изображений в базу данных
 
8275. Tekashnik
25475. Жан
25475. Жан
13417. Chip
42 Изображение - управление картинками 00:08:36
11 чел. ★ 5 ^
  На этом уроке мы займемся дизайном - создадим выпадающее меню управления изображением
 
11582. Родион
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
11589. Yefim
43 Изображение - JS - немного теории и пижонства 00:16:29
1 тест
11 чел. ★ 4.7 ^
  На этом уроке мы рассмотрим работу JS на yii2
 
30514. Tom
30514. Tom
9014. Николай Денисов
9014. Николай Денисов
44 Изображение - JS - глобализация 00:26:49
11 чел. ★ 5 ^
  На этом уроке мы перенесем все скрипты JS в отдельный файл, а также реализуем открытие и скрытие элементов ввода информации
 
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
13417. Chip
13417. Chip
45 Изображение - JS - сохранение информации в базу 00:22:42
1 тест
11 чел. ★ 5 ^
  На этом уроке мы научим нашу систему сохранять информацию об изображениях в базу
с использованием технологии ajax

 
30514. Tom
30514. Tom
9014. Николай Денисов
9014. Николай Денисов
46 Изображение - JS - извлечение методом ajax 00:09:51
11 чел. ★ 5 ^
  На этом уроке мы научим ajax получать информацию об изображениях из базы
 
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
25475. Жан
25475. Жан
47 Изображение - аватарка - вывод на главной странице 00:15:26
11 чел. ★ 5 ^
  На этом уроке мы реализуем вывод главных изображений каждого объявления
(далее - аватарки) на главной странице
 
2146. Иван
8275. Tekashnik
30514. Tom
30514. Tom
48 Изображение - аватарка - работа над ошибками связей 00:09:33
11 чел. ★ 5 ^
  На данном уроке мы исправим ошибки вывода фотографий, очистим базу и заново загрузим в нашу базу
фотографии в одно из объявлений
 
9014. Николай Денисов
9014. Николай Денисов
25475. Жан
18842. Степан
49 Изображение - аватарка - как стать главной 00:18:13
11 чел. ★ 5 ^
  На этом уроке мы создадим код, делающий любое фото главным
 
9014. Николай Денисов
9014. Николай Денисов
18842. Степан
18842. Степан
50 Изображение - удаление - ни шагу без подтверждения! 00:09:13
11 чел. ★ 5 ^
  На этом уроке мы реализуем всплывающее окно подтверждения действия
и протестируем результаты выбора различных вариантов
 
30514. Tom
30514. Tom
8275. Tekashnik
18842. Степан
51 Изображение - удаление - удаление файла и записи 00:15:49
11 чел. ★ 5 ^
  На этом уроке мы реализуем удаление файлов изображений и записей о них из базы данных
 
8275. Tekashnik
9014. Николай Денисов
9014. Николай Денисов
689. Igorenzia
52 Главная страница - подробности - ссылки и заготовка представлени 00:09:05
11 чел. ★ 5 ^
  На этом уроке мы создадим ссылки для объявлений на главной странице и заготовку представления для подробного вывода
информации объявления
 
689. Igorenzia
689. Igorenzia
2146. Иван
30514. Tom
53 Главная страница - подробности - больше подробностей 00:11:37
11 чел. ★ 5 ^
  На этом уроке мы выведем максимум информации на страницу подробностей объявления
 
25475. Жан
13417. Chip
13417. Chip
2146. Иван
54 Главная страница - подробности - расширяя информацию 00:15:15
1 тест
11 чел. ★ 5 ^
  На этом уроке мы внесем в наш код изменения, которые позволят сохранять объявления с большим количеством информации
 
11589. Yefim
30514. Tom
30514. Tom
8275. Tekashnik
55 Главная страница - оформление - дизайн объявления 00:10:02
11 чел. ★ 5 ^
  На этом уроке мы зададим стиль дизайна объявления
 
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
689. Igorenzia
2146. Иван
56 Главная страница - оформление - дизайн элементов базовой страницы 00:11:44
1 тест
11 чел. ★ 5 ^
  На этом уроке мы выведем информацию о себе в элементе footer и сделаем главное меню стильным и красивым
 
11589. Yefim
13417. Chip
13417. Chip
8275. Tekashnik
57 Главная страница - оформление - ловим цвет пикселя 00:06:00
11 чел. ★ 5 ^
  На этом уроке мы рассмотрим использование инструментов определения цвета пикселя (Пипетка)
 
689. Igorenzia
30514. Tom
30514. Tom
11589. Yefim
58 Главная страница - оформление - смотрим все изображения 00:15:27
11 чел. ★ 5 ^
  На этом уроке мы реализуем просмотр всех изображений объявления "не хуже, чем на Avito"
 
11582. Родион
30514. Tom
30514. Tom
17947. Dmitry Sinitsin
59 Главная страница - оформление - стильный логотип 00:09:56
11 чел. ★ 5 ^
  На этом уроке мы реализуем вывод логотипа в иконку проекта и в пункт меню перехода на главную страницу
 
689. Igorenzia
13417. Chip
13417. Chip
2146. Иван
60 Главная страница - оформление - оповещения через баннер 00:11:19
10 чел. ★ 5 ^
  На этом уроке мы создадим баннер для оповещений, новостей
 
11589. Yefim
8275. Tekashnik
18842. Степан
18842. Степан
61 Разделы (темы) - немного теории 00:11:07
10 чел. ★ 5 ^
  На этом уроке мы рассмотрим вопрос тематик объявлений на нашем сайте, а также составим план (структуру) таблицы тем Themes и связующей таблицы ThemesBulletins
 
30514. Tom
2146. Иван
25475. Жан
8275. Tekashnik
62 Разделы (темы) - миграции с внешними ключами 00:18:49
10 чел. ★ 5 ^
  На этом уроке мы создадим миграции таблиц themes и themesbulletins, сами эти таблицы и их модели ActiveRecord с внешними связями
 
2146. Иван
11589. Yefim
30514. Tom
30514. Tom
63 Обратная связь - мозговой штурм - внештатные ситуации 00:09:19
9 чел. ★ 5 ^
  В данном уроке попрошу Вас выполнить небольшую самостоятельную работу и дать обратную связь.
 
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
9014. Николай Денисов
9014. Николай Денисов
64 Разделы (темы) - вывод тем в объявлении 00:16:29
9 чел. ★ 5 ^
  На этом уроке мы реализуем вывод тем на странице объявления
 
25475. Жан
25475. Жан
9014. Николай Денисов
9014. Николай Денисов
65 Разделы (темы) - меню тематик 00:10:55
8 чел. ★ 5 ^
  На этом уроке мы реализуем вывод ссылок на темы на главной странице и подсчет объявлений в каждой теме
 
11589. Yefim
25475. Жан
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
66 Разделы (темы) - тематические выборки 00:15:13
8 чел. ★ 5 ^
  На этом уроке мы реализуем выбор объявлений по темам и вывод их на основную страницу
 
2146. Иван
30514. Tom
30514. Tom
18842. Степан
67 Разделы (темы) - полезные переходы 00:11:48
7 чел. ★ 5 ^
  На этом уроке мы реализуем возвращение со страницы объявлений на предыдущую страницу, а также переходы по темам объявления по типу хештегов
 
25475. Жан
2146. Иван
11589. Yefim
18842. Степан
68 Разделы (темы) - администрирование - теория и заготовки 00:09:03
7 чел. ★ 5 ^
  На этом уроке мы создадим контроллер для администрирования разделов (тем) и представление index
 
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
2146. Иван
18842. Степан
69 Разделы (темы) - администрирование - все темы в таблицу 00:10:55
7 чел. ★ 5 ^
  На этом уроке мы выведем существующие темы в таблицу и зададим им элементы управления
 
30514. Tom
30514. Tom
2146. Иван
17947. Dmitry Sinitsin
70 Разделы (темы) - администрирование - подтверждение удаления 00:15:58
7 чел. ★ 5 ^
  На этом уроке мы реализуем алгоритм подтверждения удаления и создадим соответствующее представление
 
30514. Tom
30514. Tom
9014. Николай Денисов
9014. Николай Денисов
71 Разделы (темы) - администрирование - удаление разделов и чистка связей 00:09:07
7 чел. ★ 5 ^
  На этом уроке мы окончательно удалим раздел, а перед этим удалим все его связи с объявлениями
 
18842. Степан
18842. Степан
30514. Tom
30514. Tom
72 Разделы (темы) - администрирование - Обычный ThemesForm 00:10:23
7 чел. ★ 5 ^
  На этом уроке мы создадим модель ThemesForm, заготовку действия Add в контроллере Themes и представление под него
 
18842. Степан
11589. Yefim
2146. Иван
17947. Dmitry Sinitsin
73 Разделы (темы) - исправление подсчета и отображение текущей темы 00:08:28
7 чел. ★ 5 ^
  Hа этом уроке мы исправим ошибку подсчета, обнаруженную в процессе прохождения курса,
а также отобразим текущую тему, по которой выборка объявлений, в баннере

 
30514. Tom
30514. Tom
9014. Николай Денисов
9014. Николай Денисов
74 Разделы (темы) - администрирование - "темное" представление 00:11:49
7 чел. ★ 5 ^
  На этом уроке мы создадим поля для редактирования или добавления темы в представлении themes\add
 
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
30514. Tom
30514. Tom
75 Разделы (темы) - администрирование - волшебный выпадающий список 00:09:17
1 тест
7 чел. ★ 5 ^
  На этом уроке мы создадим выпадающий список выбора родительской темы
 
2146. Иван
30514. Tom
30514. Tom
25475. Жан
76 Разделы (темы) - администрирование - сохранение темы 00:19:30
7 чел. ★ 5 ^
  На этом уроке мы реализуем сохранение добавляемых и редактируемых тем
 
18842. Степан
18842. Степан
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
77 Разделы (темы) - администрирование - рефакторинг и валидация 00:07:02
7 чел. ★ 5 ^
  На этом уроке мы сделаем рефакторинг нашего представления add и валидацию данных формы ThemesForm
 
18842. Степан
18842. Степан
2146. Иван
17947. Dmitry Sinitsin
78 Связи объявлений и тем - заготовка 00:12:50
7 чел. ★ 5 ^
  На этом уроке мы создадим действие в контроллере BulletinsController и представление,
которые помогут нам работать со связями объявлений и тем
 
11589. Yefim
2146. Иван
18842. Степан
18842. Степан
79 Связи объявлений и тем - добавление новой темы 00:22:38
7 чел. ★ 5 ^
  На этом уроке мы научим нашу систему добавлять новую тему в объявление (делать связь темы и объявления)
 
30514. Tom
30514. Tom
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
80 Связи объявлений и тем - темы, которых не было 00:11:33
1 тест
7 чел. ★ 5 ^
  На этом уроке мы научим нашу систему выводить в список добавляемых в объявление тем только те, которые не прикреплены к нашему объявлению
 
9014. Николай Денисов
9014. Николай Денисов
25475. Жан
25475. Жан
81 Связи объявлений и тем - темы, которых не будет 00:10:57
7 чел. ★ 5 ^
  На этом уроке мы научим нашу систему удалять из объявлений темы, к которым наше объявление привязывать не надо
 
9014. Николай Денисов
9014. Николай Денисов
18842. Степан
18842. Степан
82 Глобальный поиск - поле поиска в меню 00:17:09
7 чел. ★ 5 ^
  На этом уроке мы добавим поле поиска в навигационное меню сайта, а также решим вопрос с активными пунктами меню.
 
9014. Николай Денисов
9014. Николай Денисов
18842. Степан
25475. Жан
83 Глобальный поиск - ищем глобально 00:17:08
7 чел. ★ 5 ^
  На этом уроке мы создадим алгоритм поиска по вводимому в поле search контенту
 
30514. Tom
30514. Tom
2146. Иван
18842. Степан
84 Расширенный поиск - группировка пунктов главного меню 00:12:47
7 чел. ★ 5 ^
  На этом уроке мы сгруппируем пункты главного меню в подразделы,
и сделаем в нем ссылку на страницу расширенного поиска
 
30514. Tom
30514. Tom
9014. Николай Денисов
9014. Николай Денисов
85 Расширенный поиск - заготовки и план 00:10:03
7 чел. ★ 5 ^
  На этом уроке мы набросаем план будущей страницы расширенного поиска,
а также создадим действие контроллера и заготовку представления расширенного поиска
 
2146. Иван
30514. Tom
30514. Tom
17947. Dmitry Sinitsin
86 Расширенный поиск - стили и форма 00:10:11
7 чел. ★ 5 ^
  На этом уроке мы внесем исправления в стили субменю и сделаем модель формы расширенного поиска
 
2146. Иван
11589. Yefim
30514. Tom
30514. Tom
87 Расширенный поиск - дизайн текстовых полей и кнопки 00:16:02
7 чел. ★ 5 ^
  На этом уроке мы прокачаем навыки дизайна текстовых полей, создания активной формы в представлении,
а также создания кнопки через хелперы yii2
 
30514. Tom
30514. Tom
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
88 Расширенный поиск - цена - выбор варианта 00:10:45
7 чел. ★ 5 ^
  На этом уроке мы создадим систему управления выбором варианта поиска по цене
 
11589. Yefim
30514. Tom
30514. Tom
2146. Иван
89 Расширенный поиск - цена - невидимые поля 00:18:17
7 чел. ★ 5 ^
  На этом уроке мы создадим невидимые блоки с полями поиска цены, которые становятся видимыми при нажатии определенного пункта навигатора
 
18842. Степан
2146. Иван
25475. Жан
11589. Yefim
90 Расширенный поиск - дата публикации - виджет извне 00:23:18
7 чел. ★ 5 ^
  На этом уроке мы установим в наш проект компонент jui от стороннего разработчика
и создадим календарики для выбора дат

 
9014. Николай Денисов
9014. Николай Денисов
11589. Yefim
30514. Tom
91 Расширенный поиск - результаты выборки - частичное представление 00:17:21
7 чел. ★ 5 ^
  На этом уроке мы рассмотрим возможность использования частичного представления в yii2-проекте и выведем в частичное представление карточку объявления
 
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
11589. Yefim
25475. Жан
92 Расширенный поиск - генератор поиска - возвращение к SQL-запросу 00:15:52
7 чел. ★ 5 ^
  На этом уроке мы создадим генератор отчета, используя работу ActiveRecord фреймворка yii2 c
sql-запросами, и включим в него поиск по текстовым полям формы расширенного поиска
 
11589. Yefim
18842. Степан
18842. Степан
25475. Жан
93 Расширенный поиск - генератор поиска - ограничивающие даты 00:10:54
7 чел. ★ 5 ^
  На этом уроке мы добавим в генератор отчета расширенного поиска выборку по датам публикации
 
18842. Степан
18842. Степан
11589. Yefim
25475. Жан
94 Расширенный поиск - генератор поиска - три вида цены и один POST 00:14:47
7 чел. ★ 5 ^
  На этом уроке мы реализуем различные варианты выборки объявлений по цене и добавим их в наш генератор расширенного поиска
 
2146. Иван
30514. Tom
30514. Tom
25475. Жан
95 Обратная связь - свой сайт объявлений без видео
7 чел. ★ 5 ^
  И снова обратная связь.Подумаем самостоятельно и ответим на вопросы:
 
18842. Степан
30514. Tom
25475. Жан
17947. Dmitry Sinitsin
96 Расширенный поиск - генератор поиска - показать, что нужно 00:20:55
7 чел. ★ 5 ^
  На этом уроке мы реализуем отображение той вкладки поиска по ценам,
по которой производился  поиск
 
25475. Жан
9014. Николай Денисов
9014. Николай Денисов
18842. Степан
97 Работа с документацией Yii2 00:04:42
7 чел. ★ 5 ^
  На этом уроке переходим на один из официальных сайтов по Yii2
и, пользуясь помощью документации, реализовываем одну из своих идей

 
18842. Степан
18842. Степан
11589. Yefim
11589. Yefim
98 Пользователи и роли - планирование ролевой модели 00:08:08
7 чел. ★ 5 ^
  На этом уроке мы составим ролевую модель пользователей нашего сайта
 
17947. Dmitry Sinitsin
2146. Иван
9014. Николай Денисов
9014. Николай Денисов
99 Пользователи и роли - фильтры контроля доступа ACF - теория и эксперименты 00:08:44
7 чел. ★ 5 ^
  На этом уроке мы рассмотрим принципы работы фильтров контроля доступа ACF
 
30514. Tom
9014. Николай Денисов
9014. Николай Денисов
2146. Иван
100 Пользователи и роли - фильтры контроля доступа ACF - фильтруем всё 00:10:27
7 чел. ★ 5 ^
  На этом уроке мы сами создадим метод behaviors() в BulletinsController и зададим нужные фильтры для действий контроллера
 
18842. Степан
25475. Жан
30514. Tom
30514. Tom
101 Пользователи и роли - роли через RBAC - теория, установка и миграции 00:11:16
7 чел. ★ 5 ^
  На этом уроке мы установим расширение RBAC, настроим подключение к RBAC и создадим
базы для авторизации при помощи механизма миграции
 
9014. Николай Денисов
9014. Николай Денисов
30514. Tom
30514. Tom
102 Пользователи и роли - роли через RBAC - тесты и практика 00:25:53
7 чел. ★ 5 ^
  На этом уроке мы создадим тестовые роли и разрешения, а также проверим работу контроллера
согласно разрешений
 
18842. Степан
18842. Степан
11589. Yefim
25475. Жан
103 Пользователи и роли - роли через RBAC - вносим действия в план 00:09:04
7 чел. ★ 5 ^
  На этом уроке мы добавим действия к ролям в нашей актуальной ролевой модели
 
18842. Степан
11589. Yefim
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
104 Пользователи и роли - роли через RBAC - реализация плана 00:30:34
6 чел. ★ 5 ^
  На этом уроке мы создадим актуальные роли и действия для пользователей нашего сайта
 
30514. Tom
30514. Tom
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
105 Пользователи и роли - ACF+RBAC - ограничим доступ к темам 00:16:01
4 чел. ★ 5 ^
  На этом уроке мы реализуем ролевую модель для контроллера тем
 
18842. Степан
18842. Степан
25475. Жан
30514. Tom
106 Пользователи и роли - управление ролями и привилегиями - контроллер и таблица ролей 00:16:57
3 чел. ★ 5 ^
  на этом уроке мы создадим контроллер и представление для управления ролями
 
9014. Николай Денисов
9014. Николай Денисов
30514. Tom
30514. Tom
107 Пользователи и роли - управление ролями и привилегиями - форма добавления роли 00:13:53
3 чел. ★ 5 ^
  На этом уроке мы создадим действие добавления роли и форму добавления роли

 
30514. Tom
30514. Tom
9014. Николай Денисов
25475. Жан
108 Пользователи и роли - управление ролями и привилегиями - сохранение и удаление роли 00:14:17
3 чел. ★ 5 ^
  На этом уроке мы реализуем сохранение роли, а также напишем алгоритм удаления роли
 
9014. Николай Денисов
9014. Николай Денисов
25475. Жан
30514. Tom
  Итого:   108 видеоуроков 23 час. 33 мин.
25 тестов
3 чел. ★ 4.99  
  Финалисты:   Жан,   Николай Денисов,   Tom .

Начинаем практику по языку C#





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Научился: Записал видеообзор курса "Доска объявлений" как получилось судить вам, но не судите строго))
Трудности: скришот требует, а где я его возьму? я видео снимал, зачем тогда скрин? ну ладно выложу первый кадр



Научился: На этом курсе: 1 Я создал сайт 2 Сделал домен 3 Реализовал регистрацию пользователей 4 Добавлять объявления - которые могут добавлять только зарегистрированные пользователи один ко многим 5 Загружать фотографии - фотографии к объявлениям сохраняются на сайте в папке image Нравиться что Видеокурсы не больше чем 20мин, всё доступно и понятно рассказано и показано. Хочу научится делать правильные сайты модели MVC
Трудности: Получилось добавить звук к видео средствами youtube.com Надеюсь вы оцените мои труды. Что касается микрофона я купил микрофон и даже конденсаторный переходник, но это мне не помогло. Нужно покупать что то дорогое, а денег как известно нету.