Мне было интересно, есть ли способ использовать возможности Django Admin filtering/ordering/paginating/search в обычном режиме.
Я имею в виду, что у меня есть модель, некоторые поля на ней. Я хотел бы иметь форму "поиска", где поля будут определены так же, как и с помощью admin.ModelAdmin. Пользователь сможет искать (используя предоставленные поля), фильтровать значения, разбивать страницы на страницы таблицы результатов и т.д. Все это без минимального количества работы с моей стороны, например. просто сконфигурируйте, какие поля следует использовать в форме. Что-то вроде этого:
class SchoolAdmin(ModelAdmin):
list_display = ('id', 'name', )
list_display_links = ('name', )
search_fields = ('name', )
list_filter = ('type', )
Есть ли что-то подобное? Или я должен сам его кодировать?
Изменить:
Возможности, требуемые от такого плагина/приложения:
- Отображение данных в виде таблицы
- Сортировка по столбцам
- Фильтрация (например, "показывать только строки, имеющие X = Y" )
- Поиск по столбцам
- Конфигурация, похожая на стиль ModelAdmin
Alasdair django-tables2 соответствует только 1-м и 2-му условиям.