Используйте Django models.FileField для чтения файла из памяти и отбрасывания его перед записью в каталог

Как я могу прочитать файл, используя models.FileField Django, обработать данные в памяти, а затем отбросить их, прежде чем django попытается сохранить/записать их в мою директорию. Я хочу отбросить файл, но при этом сохранить другие поля для модели. Я знаю, что могу использовать формы и представления для работы с файлами, но я хочу делать это через интерфейс администратора без лишней логики

class DataField(models.Model):
    file = models.FileField()
    title = models.CharField()

    def save(self, *args, **kwargs):
        super(DataField, self).save(*args, **kwargs)

        some_background_task(self.file)
        # skip saving the file and avoid writing to directory, but save other fields
class DataField(models.Model):
    file = models.FileField(null=True)
    title = models.CharField()

    def save(self, *args, **kwargs):
        some_background_task(self.file)
        self.file = None

        super(DataField, self).save(*args, **kwargs)
Вернуться на верх