问题描述
我有以下架构的 mongoengine 集合:
class User(Document):
username = StringField(max_length=200,unique=True,required=True)
password = BinaryField(max_length=200)
def clean(self):
if self.password is not None:
if len(self.password) < 6:
raise ValidationError("Too short password.")
self.password = hash(self.password)
因此,每次更改密码时,都会对其进行验证并自动散列:
User(username="name",password="password").save()
然而,clean
方法仅在 save
内被调用。是否有任何方法也可以在 update_one
内验证和散列密码?
User.collection.objects(id=some_id).update_one(password="new_password")
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)