ListView с различными выводами в зависимости от POST или GET
Мое приложение представляет собой базу данных записей, которые можно фильтровать и группировать в списки. На индексной странице должны отображаться все записи в правильной постраничной разбивке, без фильтров, а также форма поиска для фильтрации по имени и типу записи. Есть ли способ сделать это с помощью одного ListView и одного шаблона, меняя поведение в зависимости от того, была ли страница открыта из индекса (с помощью GET) или из поиска (с помощью POST)? Если да, то как я могу изменить заголовок страницы шаблона на "Индекс" или "Результаты поиска" соответственно?
Пробовали ли вы использовать методы get()
и post()
внутри представления? Это именно то, что вам нужно.
class YourView(ListView):
...
def get(self, request):
# unique behaviour for GET
def post(self, request, *args, **kwargs):
# unique behaviour for POST
Ознакомьтесь с Django docs.