Тестовое задание “Менеджер заметок”
Описание: Web-приложение для хранения заметок. Каждая заметка имеет заголовок, содержимое, категорию и может быть помечена как “избранная”. Интерфейс приложения должен позволять выполнять поиск/сортировку заметок пользователя по различным критериям.
Требования: Заметка должна содержать: заголовок содержимое (текст с поддержкой базового HTML-форматирования дату/время создания категорию: Ссылка Заметка Памятка TODO … отметку “избранная” опциональный id для доступа по прямой ссылке (uuid)
Приложение должно позволять пользователю зарегистрироваться в системе. После входа в систему пользователь должен увидеть список своих заметок, позволяющий: добавить новую заметку изменить существующую заметку удалить существующую заметку отсортировать заметки по: дате/времени создания (по умолчанию) категории признаку “избранная” применить фильтр по: дате создания заголовку категории признаку “избранная” добавить/убрать признак “избранная” у заметки получить прямую ссылку на заметку - опубликовать заметку отменить публикацию заметки
Добавление/редактирование заметок должно осуществляться на отдельной форме. Прямая ссылка на заметку представляет собой ссылку вида http://host/note/uuid, открыв которую можно увидеть содержимое заметки в виде статичной html-страницы.
Всё взаимодействие клиентского кода с сервером после входа пользователя должно осуществляться путем AJAX-запросов везде, где это возможно (форма редактирования может быть отдельной страницей)
Рекомендуемые инструменты: серверная сторона: Web framework - django встроенные в django модули для работы с пользователями django-admin для управления учетными записями категориями заметок БД - достаточно SQL-Lite клиентская сторона: Библиотека визуальных компонент ExtJS 3.4