Лучшая практика чтения и фильтрации большого CSV-файла в Django
Я исследую способ чтения большого CSV файла и отображения его как datatable в Django admin. Мне также нужна функция фильтрации. Может ли кто-нибудь подсказать мне, какую библиотеку лучше использовать?
для чтения csv и преобразования его в объекты Django вы можете использовать Pandas, NymPy или Вы можете использовать сам Django, смотрите CSV Serializer + csv python модуль. https://docs.djangoproject.com/en/4.0/ref/settings/#serialization-modules
После этого вы получаете список объектов.
Список объектов вы можете показать в панели администратора с помощью Own view (GCBV Django, ListView) или вы можете переопределить ModelAdmin для работы со списком объектов вместо queryset.
Если вы хотите фильтровать его, также вы можете использовать SimpleAdminFilter, и на POST вы можете фильтровать ваши объекты. https://docs.djangoproject.com/en/dev/ref/contrib/admin/filters/
Возможно, вам поможет pandas, или вы можете написать свой собственный алгоритм сортировки.
Если вам нужна скорость, возможно, импорт во временную таблицу в базе данных может быть лучше.https://www.sqlitetutorial.net/sqlite-import-csv/
У этого вопроса нет лучшей практики без бизнес-контекста.