Skip to content

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

API_For_Sensei

  • Simple API on django by TOR of mentor.

What I used

  • django==2.2.6
  • djangorestframework
  • django_filters
  • requests

How to install

$ python3 -m venv 'name of virtual environment'
$ venv 'name of virtual environment'/Scripts(or bin for linux)/activate
$ pip install -r requirements.txt
$ python3 manage.py makemigrations
$ python3 manage.py migrate

Database

$ python3 manage.py database <Your url adress>

Task

Dataset: https://gist.github.com/artrey/8d6a3f2d91cefb5e6343bedbc9ef8c79

Вам необходимо разработать API сервис для выдачи информации из датасета выше. Клиент должен иметь возможность:

  1. Получать только запрошенные колонки
  2. Фильтровать данные по одной или нескольким колонкам: дате (from/to), магазинам, странам
  3. Группировать данные по одной или нескольким колонкам: датам, магазинам, странам
  4. Сортировать по любой из колонок

Если клиент не указывает, какие колонки необходимо отобразить, то требуется отобразить все колонки.

Не забываем про пагинацию.


Примеры запросов (ваши запросы могут отличаться, главное, чтобы они выполняли поставленную задачу):

  1. Показать сырые данные вида Date - Visitors - Earnings
api/v1/metrics/?show=date&show=visitors&show=earnings
  1. Показать сырые данные вида Date - Country - Visitors - Earnings за промежуток с 2021-03-20 по 2021-06-01
api/v1/metrics/?show=date&show=country&show=visitors&show=earnings&date_from=2021-03-20&date_to=2021-06-01
  1. Показать сгруппированные данные по странам, при этом отобразить Earnings и упорядочить по убыванию по Earnings
api/v1/metrics/?group=country&show=earnings&o=-earnings
  1. Показать сгруппированные данные по магазинам и странам и при этом отобразить Visitors
api/v1/metrics/?group=country&group=shop&show=visitors

About

Simple API on django by TOR of mentor.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages