Как стать автором
Обновить

Комментарии 3

Почему бы не сделать просто:
class GetQuestion(ListAPIView):
    permission_classes = (IsAuthenticated,)
    serializer_class = QuestionSerializer

class QuestionAnswer(CreateAPIView):
    permission_classes = (IsAuthenticated,)
    serializer_class = AnswerSerializer

Использование вот здесь float совсем не нужен, так как в Py3 результат выражения это уже float:
return float(current * 100 / total)
в GetQuestion нужно было только с флагом Visible отдавать
в QuestionAnswer костыль для фронта, там свои заморочки на исключения в axios
в GetQuestion нужно было только с флагом Visible отдавать

Это стандартно в DRF:
class GetQuestion(ListAPIView):
    permission_classes = (IsAuthenticated,)
    serializer_class = QuestionSerializer
    queryset = Question.objects.filter(visible=True).all()

в QuestionAnswer костыль для фронта, там свои заморочки на исключения в axios

Все легко решается полями на чтение и запись в сериалайзере. Все куски кода, что приведены в статье — это большие костыли и так не стоит делать. Даже названия вьюшек уже проблема.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий