Наличие всего этого в одном методе, и обнаружение, была ли форма отправлена через проверку на request.method. Это работает хорошо, но кажется неуклюжим, если request.method == 'post': ... else: ...
Я не уверен, почему вы описываете это как неуклюжий. Включение метода запроса является допустимой идиомой в мире веб-приложений на разных языках. Например, вы увидите, что представления Django имеют одно представление, которое обрабатывает запросы по-разному в зависимости от request.method
. Аналогично в Java сервлеты имеют методы doPost()
и doGet()
, обеспечивающие различное поведение для запросов GET
и POST
.
Обновление
Я бы предпочел разделить их на разные методы, если это возможно. Многие другие веб-фреймворки делают это
Ничего плохого в этом подходе тоже нет. Я просто указал на то, что одинаковый метод обрабатывает их одинаково.