如何异步调用shared_task
How to call shared_task asynchronously
我有这样的芹菜任务
from celery import shared_task
@shared_task
def send_to_sap(user_id):
user = User.objects.get(pk=user_id)
if settings.SYNCHRONIZATION:
response = requests.post(
settings.SOME_URL,
json={}
)
我想从视图中以异步模式执行它,我正在尝试这样做
from tasks import send_to_sap
def send_to_sap(request, pk):
# some logic...
if serializer.is_valid():
serializer.save()
send_to_sap.apply_async(kwargs={'user_id': pk})
return Response(status=status.HTTP_200_OK)
send_to_sap.delay(pk)
我应该使用 delay()
来调用
我有这样的芹菜任务
from celery import shared_task
@shared_task
def send_to_sap(user_id):
user = User.objects.get(pk=user_id)
if settings.SYNCHRONIZATION:
response = requests.post(
settings.SOME_URL,
json={}
)
我想从视图中以异步模式执行它,我正在尝试这样做
from tasks import send_to_sap
def send_to_sap(request, pk):
# some logic...
if serializer.is_valid():
serializer.save()
send_to_sap.apply_async(kwargs={'user_id': pk})
return Response(status=status.HTTP_200_OK)
send_to_sap.delay(pk)
我应该使用 delay()