#django #django-rest-framework #celery
#django #django-rest-framework #сельдерей
Вопрос:
Я использую несколько баз данных в своем приложении django, и база данных выбирается на основе URL. Все представления работают правильно и используют базу данных по мере необходимости. Теперь у меня есть API, который экспортирует данные в Excel, и я пытаюсь перенести основную логику этого API на фоновые задачи с использованием celery. Проблема, с которой я сталкиваюсь, заключается в том, что celery использует базу данных по умолчанию для запросов, которые не требуются. Итак, как я могу заставить celery использовать базу данных на основе url.
Я использую python 3.7, django 2.2.11, django rest framework 3.11.0, celery 4.4.3.
Любая помощь будет оценена. Заранее спасибо!
Комментарии:
1. разве вы не можете просто отправить базу данных для использования через параметр в задачи?
2. Я подумал об этом и использовал ручной выбор базы данных с помощью метода «using». Но запросов много, и существует обобщенная логика для создания этих запросов, которая также используется в разных представлениях. Итак, я не хочу касаться этой логики, есть ли какой-либо другой способ сделать это?
3. @AakashNihalani как вы это решили?