api.py 736 B

1234567891011121314151617181920212223242526
  1. from rest_framework import status
  2. from rest_framework.decorators import api_view
  3. from rest_framework.response import Response
  4. from . import common_flavour, finalise_markup
  5. from .serializers import MarkupSerializer
  6. @api_view(['POST'])
  7. def parse_markup(request):
  8. serializer = MarkupSerializer(data=request.data)
  9. if not serializer.is_valid():
  10. return Response(
  11. serializer.errors['non_field_errors'][0],
  12. status=status.HTTP_400_BAD_REQUEST,
  13. )
  14. parsing_result = common_flavour(
  15. request,
  16. request.user,
  17. serializer.data['post'],
  18. force_shva=True,
  19. )
  20. finalised = finalise_markup(parsing_result['parsed_text'])
  21. return Response({'parsed': finalised})