Назад к задачамПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior
7
Изменение статуса фидбэка с отправкой письма
Условие задачи
Есть API-контроллер CreateFeedbackAPIView, который создаёт объект Feedback, а затем асинхронно запускает задачу change_status_feedback. Задача обновляет статус фидбэка и вызывает функцию send_mail(). Провести код-ревью и выявить синтаксические ошибки. Убедиться, что код корректно работает с Celery-задачей, сериализацией и сохранением объекта.
@app.task(name='change_status_feedback')
def change_status_feedback(feedback):
feedback.status = 'in_progress'
send_mail()
feedback.save()
class CreateFeedbackAPIView(APIView):
def create(self, request):
serializer = self.get_serializer(data=request.data)
serializer.is_valid(raise_exception=True)
feedback = Feedback.objects.create(**serializer.validated_data)
change_status_feedback.delay(feedback)
return feedback