Необходимо разработать сервис, на основе фреймворка Django, который позволит загружать изображения с компьютера пользователя, или по ссылке, а затем изменять их размер. После выполнения задания, загрузите исходный код в ваш аккаунт на GitHub, и пришлите нам ссылку. После получения нашего ответа, удалите репозиторий с GitHub.

Требования к коду

  1. Файл README.md должен содержать инструкцию по развороту и запуску проекта
  2. Зависимости должны устанавливаться в виртуальное окружение
  3. В качестве базы данных используйте SQLite
  4. Весь функционал должен быть реализован без помощи Javascript, и html-валидации
  5. Не используйте CSS для стилизации страниц

Дополнительные баллы можно получить за покрытие кода тестами

Описание сервиса

На домашнем экране должен выводиться список загруженных изображений. Изначально он пуст. Внизу списка есть ссылка на добавление изображения.

https://www.figma.com/embed?embed_host=notion&url=https%3A%2F%2Fwww.figma.com%2Ffile%2FsAcBnNqQmwy5ImcO61KLEJ%2Ftest-task%3Fnode-id%3D1%253A2

Добавить изображение можно введя ссылку на файл из интернета, или выбрав файл с компьютера. Если при отправке формы не введено ни одного варианта, или введены оба, должно выдаться сообщение об ошибке.

https://www.figma.com/embed?embed_host=notion&url=https%3A%2F%2Fwww.figma.com%2Ffile%2FsAcBnNqQmwy5ImcO61KLEJ%2Ftest-task%3Fnode-id%3D1%253A13

После успешной загрузки, мы попадаем на страницу изображения. Изначально, изображение выводится здесь в своём оригинальном размере. Через форму можно задать новые размеры. После отправки формы, страница должна обновиться, и вывести изображение, вписанное в новые размеры. Размер изображения должен изменяться физически на бэкенде, при этом оригинальное изображение должно сохраняться. Можно задать только ширину, только высоту, или оба значения. Пропорции изображения должны сохраняться.

https://www.figma.com/embed?embed_host=notion&url=https%3A%2F%2Fwww.figma.com%2Ffile%2FsAcBnNqQmwy5ImcO61KLEJ%2Ftest-task%3Fnode-id%3D1%253A43

Со страницы изображения и со страницы добавления изображения можно вернуться назад к общему списку изображений.

https://www.figma.com/embed?embed_host=notion&url=https%3A%2F%2Fwww.figma.com%2Ffile%2FsAcBnNqQmwy5ImcO61KLEJ%2Ftest-task%3Fnode-id%3D1%253A28

Удачи!