我正在网站上工作。
当用户从新设备登录该站点时,我会将验证码发送给用户。
如果用户因登录尝试失败而在10秒内尝试登录,我不想重新发送新的验证码。
所以我保存了他尝试从数据库登录的浏览器的device-id。并在10秒后调用一个函数来清除DB中的设备ID。
我为此目的编写了以下代码:
code = validation_code
user_object.ip_validation_code = code
user_object.pre_validation_devices[device_used] = code
def clear_pre_validation_devices():
user_object.pre_validation_devices = {}
user_object.save()
Timer(30.0, clear_pre_validation_devices).start()
user_object.save()
执行代码后,我发现这并没有像我预期的那样清除提交的 pre_validation_devices 。
我正在使用Django 1.6和Mongo DB,我将不胜感激任何帮助。
谢谢