如何使用models.filefield将文件保存在数据库中,而不是在服务器媒体文件夹中上传



我想将文件保存在数据库中,而不是将其上传到服务器媒体文件并将URL保存在数据库中,我想直接将文件保存在数据库中。

现在我正在这样做:

model.py:

File = models.FileField(upload_to='CSR/', null=True , blank = True)

template.html:

<td> {{certificate.File.url}} </td>

django支持BinaryField,它使您可以将二进制数据存储在数据库中。

django文档状态:

滥用binaryfield

尽管您可能会考虑将文件存储在数据库中,但考虑在99%的情况下它是不良设计。该字段不是替代适当的静态文件处理。

如果您不想将文件存储到网络服务器的文件系统中,则可以使用Django-storages库,该库为Amazon S3,Digitalocean等提供选项。

最新更新