Использование list_filter в Django Admin

Использование list_filter в Django Admin

Когда дело доходит до создания административного интерфейса веб-приложения с использованием Django, Django Admin становится настоящим спасением для разработчиков. Однако, мало кто осознает всю мощь и гибкость, которые предоставляет этот инструмент.

В этой статье я расскажу вам о том, как использование list_filter в Django Admin может значительно улучшить ваш опыт работы с админ-панелью на примере модели недвижимости Apartment.

Изучаем list_filter

list_filter — это параметр, который позволяет добавлять боковую панель фильтрации в админ-панели Django. Этот инструмент позволяет нам быстро и удобно фильтровать отображаемые данные на основе определенных критериев. Давайте рассмотрим, как применить его на примере модели Apartment.

# models.py
from django.db import models

class Apartment(models.Model):
    room_total = models.IntegerField()
    area = models.FloatField()
    price = models.DecimalField(max_digits=10, decimal_places=2)

Интеграция list_filter в Django Admin

Откройте файл admin.py в вашем приложении и добавьте следующий код:

# admin.py
from django.contrib import admin
from .models import Apartment

class ApartmentAdmin(admin.ModelAdmin):
    list_display = ('room_total', 'area', 'price')
    list_filter = ('room_total', 'price')

admin.site.register(Apartment, ApartmentAdmin)

Теперь, при переходе в админ-панель и просмотре списка квартир, вы заметите новую панель фильтрации сразу справа. Это позволяет вам моментально ограничить список квартир, отображаемых в админ-панели, в соответствии с выбранными критериями.

Улучшение пользовательского опыта

Использование list_filter не только облегчает администратору поиск конкретных данных, но и улучшает пользовательский опыт взаимодействия с админ-панелью. Это особенно полезно, когда у вас большое количество записей, и вы хотите быстро найти необходимую информацию.
Примеры использования

Давайте представим, что у нас есть большой список квартир, и мы хотим найти все квартиры с определенным количеством комнат и ценой ниже определенного уровня. Благодаря list_filter, это можно сделать всего в несколько кликов, избежав долгого скроллинга и поиска.

Заключение

Использование list_filter в Django Admin — это простой и эффективный способ улучшить работу с административной панелью. Настройте его в соответствии с потребностями вашего проекта, и вы увидите, как легко можно осуществлять фильтрацию и находить необходимую информацию. Это инструмент, который действительно добавляет удобства и экономит ваше время в процессе разработки и управления веб-приложением на Django.

Егор Егоров

Программирую на Python с 2017 года. Люблю создавать контент, который помогает людям понять сложные вещи. Не представляю жизнь без непрерывного цикла обучения, спорта и чувства юмора.

Ссылка на мой github есть в шапке. Залетай.

Оцените автора
Егоров Егор
Добавить комментарий