Практическая работа №12
Разработка пользовательской части и личного кабинета
Section titled “Разработка пользовательской части и личного кабинета”Цель работы:
- вывести каталог объектов из базы данных;
- реализовать детальную страницу объекта;
- реализовать основное пользовательское действие;
- сохранить пользовательское действие в базе данных;
- разработать личный кабинет пользователя;
- вывести список действий текущего пользователя;
Основные теоретические положения
Section titled “Основные теоретические положения”Пользовательская часть
Section titled “Пользовательская часть”Пользовательская часть — это раздел проекта, с которым работает обычный пользователь: каталог, детальная страница, форма действия и личный кабинет.
Основное действие
Section titled “Основное действие”| Предметная область | Действие |
|---|---|
| Стоматологическая клиника | Запись на приём |
| Интернет-магазин книг | Заказ книги |
| Фотостудия | Бронирование зала |
| Афиша мероприятий | Регистрация на мероприятие |
| Каталог вакансий | Отклик на вакансию |
Личный кабинет
Section titled “Личный кабинет”Личный кабинет доступен только авторизованному пользователю. В нём пользователь видит свои данные и свои заявки, заказы, записи, бронирования или отклики.
Производственная ситуация
Section titled “Производственная ситуация”Вы уже реализовали регистрацию, авторизацию и роли. Теперь пользователь должен иметь возможность выбрать объект, выполнить основное действие и увидеть результат в личном кабинете.
Основные требования к практической работе
Section titled “Основные требования к практической работе”В рамках практической работы необходимо:
- Вывести каталог объектов из базы данных.
- Реализовать детальную страницу объекта.
- Реализовать категории или фильтр.
- Реализовать форму основного пользовательского действия.
- Сохранить действие в базе данных.
- Реализовать личный кабинет.
- Вывести список действий текущего пользователя.
- Запретить просмотр чужих действий.
Задания для выполнения
Section titled “Задания для выполнения”Задание 1. Каталог из базы данных
Section titled “Задание 1. Каталог из базы данных”Получите объекты каталога из БД и выведите их в виде карточек.
Задание 2. Карточка объекта
Section titled “Задание 2. Карточка объекта”В карточке покажите изображение, название, краткое описание, категорию и ссылку «Подробнее».
Задание 3. Детальная страница
Section titled “Задание 3. Детальная страница”Получайте объект по id, обрабатывайте ситуацию, когда объект не найден.
Задание 4. Форма основного действия
Section titled “Задание 4. Форма основного действия”Создайте форму записи, заказа, бронирования, заявки или отклика. Форма доступна только авторизованному пользователю.
Задание 5. Сохранение действия
Section titled “Задание 5. Сохранение действия”Сохраняйте действие в базе данных с привязкой к user_id, объекту каталога и статусу.
Задание 6. Личный кабинет
Section titled “Задание 6. Личный кабинет”Создайте страницу профиля пользователя с данными из сессии или базы данных.
Задание 7. Страница «Мои действия»
Section titled “Задание 7. Страница «Мои действия»”Выведите только действия текущего пользователя через условие WHERE user_id = ?.
Задание 8. Отображение статусов
Section titled “Задание 8. Отображение статусов”Покажите статус каждого действия в личном кабинете.
Задание 9. Проверка доступа
Section titled “Задание 9. Проверка доступа”Проверьте, что пользователь не может видеть чужие действия через изменение id в адресной строке.
Задание 10. Коммит результатов
Section titled “Задание 10. Коммит результатов”Выполните коммит с сообщением add user catalog actions and account.
Требования к результату
Section titled “Требования к результату”К завершению практической работы должны быть подготовлены:
- каталог с данными из базы;
- детальная страница объекта;
- категории или фильтрация;
- форма основного пользовательского действия;
- сохранение действия в БД;
- личный кабинет;
- страница «Мои действия»;
- защита от просмотра чужих данных;
- коммит с результатами работы;
Контрольные вопросы
Section titled “Контрольные вопросы”- Что входит в пользовательскую часть проекта?
- Почему основное действие должно сохраняться в базе данных?
- Для чего нужен личный кабинет?
- Почему пользователь должен видеть только свои действия?
- Как связать действие пользователя с объектом каталога?
- Для чего нужны статусы?
Рекомендуемые материалы
Section titled “Рекомендуемые материалы”- Требования к итоговому проекту.
- Дорожная карта учебной практики.
- Git-репозиторий индивидуального проекта.
- Документация, подготовленная на предыдущих этапах.
- Материалы по теме практической работы.