我应该如何在Django中存储文件



我正在Django Rest框架中编写一个应用程序,该应用程序接受员工数据并为他生成pdf格式的条形码。那么我必须根据要求提供这些文件。问:我应该如何存储在应用程序中创建的文件?我有一个员工本身的模型,还有一个与员工模型和文件字段有一对一关系的模型。使用什么类型的字段:FileField还是FilePathField?生成的文件将存储在服务器上。它们必须通过API以二进制数据的形式给出

这取决于:)您可以直接将文件存储到数据库中,或者存储在文件系统中。

在db中,您可以使用BinaryField,但是,大多数情况下,这是一个糟糕的选择。

在文件系统中,您实际上有两个选择:

  • FilePathField只是一个特殊的CharField来处理路径
  • 然而,FileField处理文件操作的所有痛苦方面。你只需要给一个文件指针,django就会完成剩下的工作:)

如果你不想重新发明轮子,你绝对应该使用FileField

最新更新