【问题标题】:Django database entry created by concatenation of two fields通过连接两个字段创建的 Django 数据库条目
【发布时间】:2018-03-29 05:41:15
【问题描述】:

我有以下 Django 模型

class Labels(models.Model):
    user = models.CharField(max_length=200)
    label = models.CharField(max_length=200)
    live = models.CharField(max_length=1)
    unique_key = models.CharField(max_length=200)
    def __str__(self):
        return '%s / %s' % (self.user, self.label)

我希望unique_key 自动填充md5(user + label) 的串联

例如

user = '詹姆斯'

label = 'KDJ'

concat = user + label unique_key = print(hashlib.md5(concat.encode()).hexdigest())

输出

1935636b374a17f87636460e4307f736

【问题讨论】:

    标签: python django


    【解决方案1】:

    您可以为此覆盖保存方法:

    class Labels(models.Model):
    
        def save(self, *args, **kwargs):
            concat = self.user + self.label
            self.unique_key = hashlib.md5(concat.encode()).hexdigest()
            super().save(*args, **kwargs)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-11
      • 2017-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多