Как использовать get_or_create | api/django
Помогите с кодом, не понимаю, как это сделать
def post_del_recipe(self, request, pk, database):
recipe = get_object_or_404(Recipe, id=pk)
if request.method == 'POST':
if not database.objects.filter(
user=self.request.user,
recipe=recipe).exists():
database.objects.create(
user=self.request.user,
recipe=recipe)
serializer = SubscribeRecipeSerializer(recipe)
return Response(serializer.data,
status=status.HTTP_201_CREATED)
text = 'errors: Объект уже в списке.'
return Response(text, status=status.HTTP_400_BAD_REQUEST)
if request.method == 'DELETE':
if database.objects.filter(
user=self.request.user,
recipe=recipe).exists():
database.objects.filter(
user=self.request.user,
recipe=recipe).delete()
return Response(status=status.HTTP_204_NO_CONTENT)
text = 'errors: Объект не в списке.'
return Response(text, status=status.HTTP_400_BAD_REQUEST)
else:
text = 'errors: Метод обращения недопустим.'
return Response(text, status=status.HTTP_400_BAD_REQUEST)
Источник: Stack Overflow на русском