Проверка файла при загрузке в админке django - PullRequest
0 голосов
/ 18 сентября 2018

У меня есть сайт, на котором администраторы могут загружать файл (файл xlsx), который затем отображается пользователям.Я хотел бы проверить, будет ли загруженный файл правильно обрабатываться для показа пользователям.(Имена столбцов соответствуют ожидаемым, содержимое имеет правильный тип и т. Д.) Я нашел, как изменить save_model в admin.ModelAdmin, но в документации указано, что функция должна сохранять файл, но я не могуполучить метод pre_save для вызова, особенно если не нужно, чтобы он не перезаписывал уже существующую функцию, которая проверяет, используются ли поля и т. д. Я хотел бы опубликовать сообщение об ошибке и не сохранять файл, если проверки не пройдены.(Явно не рабочий код):

class FileAdmin(admin.ModelAdmin):
    def pre_save(self,add):
        if 'colmun' not in df.columns: 
           self.message_user(self.request, "File failed tests.")
           raise ??
        else:
           self.message_user(self.request, "Passed tests, file saved")
...