Django 用户,将用户的is_active设置为 false 一分钟,然后再次重新激活



我有一个接收器用于post_save信号,用于检测和限制来自同一用户的多个活动访问令牌。

除此之外,我还想将检测到的用户锁定一分钟,并使用用户的is_active字段再次重新激活用户。

有没有办法在不创建和使用新模型来存储帐户锁定的开始时间的情况下执行此操作?另外,我认为为此安排工作有点矫枉过正。

使用 Django 芹菜,我设法设置了一个异步任务来解决我的问题。

@app.task
def start_timeout(username):
    from time import sleep
    from django.contrib.auth.models import User
    user_obj = User.objects.get(username=username)
    user_obj.is_active = False
    user_obj.save()
    sleep(60)
    user_obj.is_active = True
    user_obj.save()

相关内容

  • 没有找到相关文章

最新更新