Объект celery 'function' не имеет атрибута 'delay', как получить возвращаемое значение после задержки?
Здравствуйте, у меня проблема с получением возвращаемого значения функции async.
вот мой код views.py
def preprocess_log2(request,uuid):
data = get_object_or_404(Adata, uuid=uuid)
if request.method == "POST":
result = log2_transform_task.delay(data.raw_path)
test = result.get()
data.mat_data = test
data.save()
return redirect("raptorlite:home")
return render(request, 'raptorlite/detail.html',{"data":data})
это код моей задачи
@shared_task
def log2_transform_task(raw:str, out_dir = None) -> str:
return out_name
извините, что не загружаю свой исходный код, но я проверил результат, он работает отлично
и это мой settings.py
CELERY_BROKER_URL = 'redis://redis:6379/0'
result_extended = True
accept_content = ['application/json']
result_serializer = 'json'
task_serializer = 'json'
timezone = 'Asia/Seoul'
CELERY_RESULT_BACKEND = 'redis://redis:6379/0'
введите описание изображения здесь
когда я запускаю код, если не использовать result.get(), он работает хорошо, но я хочу получить возвращаемое значение, поэтому я следовал документации celery, однако после использования get для возврата значения внезапно возникла ошибка...
пожалуйста, помогите мне...
Я следовал документации по celery и читал о подобном случае ошибки здесь, но я проверил, что имя функции не дублируется