当我们对某个表需要在创建时,给他绑定一个随机的id,那么我们怎么做呢?

当创建一个用户时执行的为save方法,所以通过下面的

super(UserInfo, self).save(*args, **kwargs)来将生成的md5值赋给这条创建的记录。
import hashlib
from django.db import models

class UserInfo(models.Model):
    username = models.CharField("用户名", max_length=64, unique=True)
    password = models.CharField("密码", max_length=64)
    uid = models.CharField(verbose_name='个人唯一ID',max_length=64, unique=True)
    wx_id = models.CharField(verbose_name="微信ID", max_length=128, blank=True, null=True, db_index=True)

    def save(self, *args, **kwargs):
        # 创建用户时,为用户自动生成个人唯一ID
        if not self.pk:
            m = hashlib.md5()
            m.update(self.username.encode(encoding="utf-8"))
            self.uid = m.hexdigest()
        super(UserInfo, self).save(*args, **kwargs)

相关文章:

  • 2021-06-11
  • 2022-12-23
  • 2021-10-09
  • 2021-06-19
  • 2022-02-08
  • 2022-01-07
  • 2022-03-04
猜你喜欢
  • 2021-07-12
  • 2021-09-22
  • 2022-12-23
  • 2021-11-19
  • 2022-01-04
  • 2021-09-19
  • 2022-01-26
相关资源
相似解决方案