Skip to content

Приложение для удобной работы с валютами и курсами валют от ЦБ РФ

License

Notifications You must be signed in to change notification settings

egregors/django-cbrf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

django-cbrf

Приложение для удобной работы с валютами и курсами валют от ЦБ РФ

Build Status PyPI version

Сайт and API Центробанка.

Установка

Для запуска необходимы:

  • Python >= 3
  • Django >= 3.8
  • cbrf

Установка из PyPI:

    pip install django-cbrf

Версия для разработчиков:

    git clone https://github.com/egregors/django-cbrf.git
    cd django-cbrf
    pip install -e .

Запуск тестов:

    cd django-cbrf/tests
    python manage.py test test_app

Настройки

Добавить приложение в INSTALLED_APPS:

INSTALLED_APPS = (
    # ...
    'django_cbrf',
)

Доступные настройки:

# your settings.py

# приложение, где находятся собственные модели
# (опционально, по умолчанию "django_cbrf")
CBRF_APP_NAME = 'test_app'

# количество дней, для заполнения БД (будут получены котировки за последние CBRF_DAYS_FOR_POPULATE дней
# (опционально, по умолчанию 60 дней)
CBRF_DAYS_FOR_POPULATE = 30 

Пакет содержит готовые для использования модели Currency и Record в модуле django_cbrf.models, но вы можите также использовать свои собственные модели, наследовав их от AbstractCurrency и AbstractRecord из django_cbrf.abstract_models.

Для использования собственных моделей необходимо в настройках указать приложение, в моделях которого находятся модели для валют и курсов:

Важно!

Ваши собственные модели для валют и курсов должны называться точно Currency и Record

Команды manage.py

Загрузка валют

Для того, что бы загрузить перечень существующих валют можно выполнить команду:

    python manage.py load_currency

в случае, если в БД нет ни одной записи модели Currency, эти записи будут загружены через API ЦБ.

Для загружки валют независимо от условий, используйте флаг --force

Загрузка курсов

Чтобы загрузить историю курсов за указанное время необходимо выолнить команду load_rates. В качестве параметров команда принимает перечень ISO кодов нужных валют, и опционально, количество дней за которые необходимо получить курсы. Например, для загрузки в БД историии курсов Доллара США и Евро за последние 90 дней необходимо выполнить:

    python manage.py load_rates usd eur --days 90

Контрибьютинг

Сообщения об ошибках, исправления и новый функционал всегда преветствуются. Открывайте issues, пуште пул реквесты.

About

Приложение для удобной работы с валютами и курсами валют от ЦБ РФ

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors 4

  •  
  •  
  •  
  •