Ведение базы данных только для чтения в Django с использованием скрипта Python - PullRequest
0 голосов
/ 29 августа 2018

У меня есть скрипт Python, который загружает данные из источника API и преобразует их в список словарей, которые я сохраняю в виде файла JSON.

Отдельно у меня есть проект Django, который использует эти данные для обработки данных на веб-странице. В настоящее время я использую базу данных SQLite по умолчанию, но планирую использовать Postgresql в производстве.

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

Проблема в том, что я могу заставить проект Django "работать" с фиктивными, примерными данными; и сценарий работает независимо от Django.

Как мне интегрировать этот загрузочный скрипт для работы с Django и «выдвигать» новые записи и обновления в Django DB с помощью скрипта python? Пользователи проекта Django будут только читать данные, а не записывать / обновлять данные в противном случае.

Я просмотрел множество учебных пособий, таких как приложение для опросов Django, но теряюсь в том, как объединить эти две части вместе. Это случай использования приспособлений снова и снова для перезагрузки данных в БД? Похоже, что это не лучший метод, так как приборы используются только для тестовых данных и не будут автоматическими.

Чего мне не хватает? В качестве альтернативы, Django - не лучший способ обслуживания данных из БД, доступной только для чтения? Что было бы лучшей альтернативой?

Ответы [ 2 ]

0 голосов
/ 29 августа 2018

Один из подходов к этому следующий:

  • Создание модели в вашем проекте django для хранения загруженных данных
  • Преобразовать скрипт Python, который загружает данные в команду управления https://docs.djangoproject.com/en/2.1/howto/custom-management-commands/
  • Периодически запускать команду управления (через cron или другим способом, который вы предпочитаете)
0 голосов
/ 29 августа 2018

Проверьте этот ответ. Вы уже сделали большую часть работы. Существует несколько способов вставки значений JSON в базу данных. Вам даже не нужно проходить через Джанго, если вы этого не хотите. Все, что имеет значение, так это то, что ваши данные каким-то образом попадают в базу данных. Django не должен быть тем, кто вставляет эти значения, чтобы использовать их, он может читать значения, помещенные в базу данных третьими лицами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...