Allauth验证了用户

siv*_*anr 5 django-allauth

我正在使用django 1.6和allauth.我刚刚启用了电子邮件验证功能,并且正在寻找确定用户是否拥有经过验证的电子邮件的最佳方式.我遇到一个有趣的事情并想问一下:我注意到用户可以拥有多个电子邮件地址.为什么会这样?这使得上述测试更加复杂,因为您必须询问"用户是否至少有一个经过验证的电子邮件地址?"

pen*_*rsr 12

allauth为此提供装饰器:

from allauth.account.decorators import verified_email_required

@verified_email_required
def verified_users_only_view(request):
    ...
Run Code Online (Sandbox Code Playgroud)

或者,您可以使用它来自行检查:

if EmailAddress.objects.filter(user=request.user, verified=True).exists():
    ...
Run Code Online (Sandbox Code Playgroud)

无论用户设置了多少个电子邮件地址,上述操作都有效...