按Django中的文件大小筛选(文件字段)

按Django中的文件大小筛选(文件字段),django,django-orm,filefield,Django,Django Orm,Filefield,我有一个a模型: class MyModel(models.Model): file = models.FileField(verbose_name='File', upload_to="files/") 我可以获取以字节为单位的文件大小: size = my_model_instance.file.size 如何在Django中按文件大小进行过滤?诸如此类: MyModel.object.filter(file.size__lt=128) 你不能model_instance.fi

我有一个a模型:

class MyModel(models.Model):
    file = models.FileField(verbose_name='File', upload_to="files/")
我可以获取以字节为单位的文件大小:

size = my_model_instance.file.size
如何在Django中按文件大小进行过滤?诸如此类:

MyModel.object.filter(file.size__lt=128)

你不能
model_instance.file.size
实际打开关联的文件并从磁盘获取大小。数据库中保存的唯一内容是文件的路径


如果希望能够按文件大小进行筛选,则必须将大小保存在数据库中,作为模型的一个额外字段。您可以在保存模型时自动填充该字段。

谢谢!我将把文件大小保存为模型中的另一个字段。