当我按函数进行身份验证时
from django.contrib.auth import authenticate
如果我使用函数,Djnago不会触发成功/失败信号
from django.contrib.auth import login
它会像预期的那样触发。基本上我想从下面的函数中触发信号
user = authenticate(username=username, password=password)现在,我在代码中添加了额外的行
login(request, user)在添加这个之后,我在这里得到了信号
from django.contrib.auth.signals import (
user_logged_in,
user_login_failed,
)如何从身份验证定义中获得信号?我将此用于API
发布于 2020-02-20 20:20:07
Django没有从authenticate发送user_logged_in信号。你可以看到here,它从login发送它。但是,您始终可以自己触发signal。
from django.contrib.auth import authenticate, user_logged_in
user = authenticate(username=username, password=password)
user_logged_in.send(sender=user.__class__, request=request, user=user)或者可以编写一个同时完成这两个任务的函数。
https://stackoverflow.com/questions/60319368
复制相似问题