跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • Django 如何用自增 id 作为图片的名
未分類
31 7 月 2019

Django 如何用自增 id 作为图片的名

Django 如何用自增 id 作为图片的名

資深大佬 : dolaxi 55

我本意是想图片上传的时候,用数据库自增 id 作为图片的名称

models.py   class Goods(models.Model):     image = models.ImageField(upload_to=pic_path,verbose_name='封面图')     create_time = models.DateTimeField(auto_now_add=True,verbose_name='创建时间')     def pic_path(instance, filename):     #自定义保存路径和文件名      # 源文件名后缀     ext = filename.split('.')[-1]     # 文件名     # new_name = datetime.now().strftime('%Y%m/')+shortuuid.uuid()     # new_name =instance.id #无效     new_name =      # 拼接文件名和后缀     path = new_name + '.' + ext     return path   

大佬有話說 (8)

  • 資深大佬 : 111111111111

    save 以后就有 id 了,然后再修改文件路径

  • 資深大佬 : SingeeKing

    可以用 post_save signal 改名实现。如果是想创建阶段便命名为 ID 是不可能的 —— 因为保存之前还没有 ID

  • 資深大佬 : wd

    建一个 sequance 没次需要名字都从 seq 取一个

  • 資深大佬 : emeab

    用 redis 自增啊

  • 資深大佬 : emeab

    不过还是推荐用雪花算法做唯一名吧 自增意义不大

  • 主 資深大佬 : dolaxi

    @emeab 我是担心数据量大了,如果 name 太复杂,又没有一定的递增,数据库索引压力比较大

  • 資深大佬 : beastk

    用 hash 吧自己生成,不用等自增,比如时间戳➕随机数,或者原子,提前生成好就是唯一 id 了。

  • 資深大佬 : Erroad

    时间戳+redis 自增+随机数

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具