代码之家  ›  专栏  ›  技术社区  ›  jmissao

在Django处理临时图像的最佳方法?

  •  2
  • jmissao  · 技术社区  · 17 年前

    不过,我不知道什么是最好的方法。例如,我可以使用基于文件的会话,只需设置要在会话文件夹中生成的映像,它们将(或至少应该)随会话一起销毁。我想我可以对数据库会话做一些类似的事情,也许在数据库中保存图像,或者在会话结束时删除它们,但是,基于文件的解决方案对我来说更可靠。

    1 回复  |  直到 17 年前
        1
  •  0
  •   SmileyChris    17 年前

    我将根据会话密钥的哈希命名临时映像,然后创建一个管理命令:

    1. 生成一个包含所有当前会话的潜在临时文件名哈希的列表。
    2. 获取临时目录中所有当前文件名的列表
    3. 删除哈希列表中没有匹配项的文件名

    因为没有故障保护方法可以知道会话是否已“关闭”,所以应该使用 cleanup 管理命令优先-可以在这个命令之前,也可以使用 call_command() 功能。