
- •Хранилище фотоальбомов
- •Введение
- •Постановка задачи
- •Описание инструментов субд
- •Язык программирования
- •Структура базы данных Диаграмма
- •Описание таблиц
- •Структура web-приложения Определение основных страниц
- •Определение реализации страниц
- •Контроллеры
- •Просмотр списка пользователей
- •Просмотр профиля пользователя
- •Вход пользователя в систему
- •Выход пользователя из системы
- •Регистрация нового пользователя
- •Редактирование профиля
- •Удаление профиля
- •Восстановление пароля
- •Категории
- •Просмотр категорий пользователя
- •Добавление новой категории
- •Редактирование категории
- •Удаление категории
- •Альбомы
- •Вывод списка альбомов
- •Отображение списка альбомов в категории
- •Отображение альбомов конкретного пользователя
- •Добавление альбома
- •Изменение альбома
- •Удаление альбома
- •Фотографии
- •Вывод списка фотографий
- •Вывод списка фотографий в альбоме
- •Вывод списка фотографий пользователя
- •Просмотр фотографии
- •Добавление фотографии
- •Редактирование фотографии
- •Удаление фотографии
- •Поиск фотографии
- •Комментарии
- •Добавление комментариев
- •Просмотр комментариев
- •Оценивание фотографии
- •Просмотр средней оценки
- •Просмотр друзей пользователя
- •Добавление в друзья
- •Запросы в мои друзья
- •Принятие заявки
- •Отклонение заявки
- •Просмотр отправленных мной заявок
- •Удаление пользователя из списка друзей
- •Сообщения
- •Отправка сообщения
- •Просмотр списка диалогов
- •Просмотр диалога
- •Заключение
Просмотр списка диалогов
Список диалогов формирует метод index контроллера mail. Внешний вид списка диалогов:
Рисунок 45
где справа показано количество сообщений в переписке с данным пользователем.
Просмотр диалога
Список сообщений в диалоге формирует метод dialog контроллера mail. Внешний вид списка сообщений в диалоге:
Рисунок 46
где синим цветом выделено еще непрочитанное сообщение. Признаком прочтения является просмотр диалога, следовательно, после перезагрузки страницы подсветка исчезнет. Также количество непрочитанных сообщений отображается рядом с ссылкой «Почта» в профиле пользователя:
Таким образом, переписка становится наиболее ясной. Система предупреждает пользователя о новых сообщениях.
Заключение
Разработанная система хранения фотоальбомов является примитивным продуктом, на примере которого мной было показано умение разрабатывать приложения, взаимодействующие с базой данных. Структура базы данных оставалась почти неизменной на протяжении всего цикла разработки, что говорит о ее неплохой продуманности.
Запросы к базе данных содержатся в моделях и построены с использованием библиотеки Active Record, которая является удобным инструментом структурирования запросов ввиду автоматического парсинга переданных параметров. Запросы на выборку содержат операторы агрегирования, группировки, соединения таблиц. Этого вполне хватило для реализации построенной системы.
Таганрог