Git Product home page Git Product logo

rest_filefield's Introduction

REST_FileField

Веб-сервис с использованием Django REST Framework. Сервис позволяет загружать файлы и выгружать информацию о файлах.

Реализованы следующие эндпоинты:

  • POST: /upload/
  • GET: /files/

POST-запрос на /upload/ требует прикрепленный файл. При данном запросе в базе данных создастся объект модели File, далее с помощью Celery создастся асинхронная задача для обработки файла, после чего в объект будет добавлен сам файл, а булево поле processed (по-умолчанию False) поменяется на True.

GET-запрос на /files/ возвращает список всех файлов с их данными, включая статус обработки.

Как запустить

Клонируйте код

git clone https://github.com/EshiNanase/REST_FileField.git

Создайте .env файл со следующими переменными окружения

  • SECRET_KEY — секретный ключ проекта. Он отвечает за шифрование на сайте. Например, им зашифрованы все пароли на вашем сайте.
  • DEBUG — дебаг-режим. Для разработки - False, для продакшена - True.
  • POSTGRES_DB — название базы данных Postgres.
  • POSTGRES_USER — имя юзера для входа в базу данных Postgres.
  • POSTGRES_PASSWORD — пароль для входа под именем юзера сверху.

Соберите образ Docker

docker compose build

Запустите Docker

docker compose up

Откройте сайт в браузере

Вы можете работать с сайтом, пользуясь пользовательским интерфейсом Swagger. Он находится по ссылке:

http://127.0.0.1:8000/docs/

rest_filefield's People

Contributors

eshinanase avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.