если честно: это не костыль, это говнокод
но чтобы разобраться что именно и почему, я подозреваю, надо окунаться с головой
а у тебя неаутентифицированные пользователи могут юзать этот ViewSet?
не стейсняйся использовать if queryset.filter().exists(), это делаеьт код очевиднее чем if queryset.filter(), и кажется (но это не точно), работает быстрее
Понял, принял
там иф вообще не нужен, кстати
c exists работает быстрее, так как не выгружает результат
1 у тебя во вьюху ответов приходит ид задачи? 2 зачем ты сначала получаешь таску, а потом фильтруешь по ид? 3 твой иф не отработает, нужно экзистс добавить, но лучше от уже полученной таски плясать)
1. Да, у меня путь /api/tasks/1/answer-create, который принимает POST запрос и потом создает отклик на задачу с id = 1 2. Я сначала получаю таску с этим айдишником, а потом проверяю, можно ли эту таску получить, если в откликнувшихся указать requst.user (мол, логика в том, что если такая таска есть, то этот юзер уже откликался на эту задачу, иначе - нет) 3. Про exist уже понял)
Должно вроде упасть, если начать передавать что нибудь вроде 419572838 Хотя я не знаю как дрф хендлит геты объектов, которых нет
Обсуждают сегодня