- 
                Notifications
    You must be signed in to change notification settings 
- Fork 3
biohub.core.files
        hsfzxjy edited this page Jul 27, 2017 
        ·
        1 revision
      
    此模块用于处理用户上传的文件。
用户上传的文件可分为三类:
- 永久储存在磁盘上并需要记录在数据库中的文件(例如实验文件,需要作为某些表的外键)
- 永久储存在磁盘上但不记录在数据库中的文件(如帖子的图片,只需用 URL 访问它)
- 临时文件,用后自动删除(如用户上传给 ABACUS 的输入文件)
此模块封装了这三类文件的接收、存储功能。
用于记录需要入库文件的表。
字段:
- 
file:FileField,与记录相关联的文件
- 
mime_type:CharField,文件的 MIME 类型
传入一个类文件对象,将内容转存至文件系统,返回一个二元组 (file_path, mime_type)。其中 file_path 是相对于 settings.MEDIA_ROOT 的相对路径。
传入一个类文件对象,将内容转存至临时目录,并返回临时文件对象(一个类文件对象)。该对象一旦被关闭(.close()),临时文件即被删除。
将 request.FILES[field_name] 中的文件转存至文件系统和数据库中,返回一个 models.File 实例。
将 request.FILES[field_name] 中的文件转存至临时目录中,返回一个临时文件对象。