在我的django应用中,我想表明用户尝试使用错误的密码登录3次。
我正在使用 django-brutebuster
我可以在自己的Postgres中看到一个名为 BruteBuster_failedattempt 的迁移表,该表具有以下列:
Installed Apps:
...
BruteBuster
Middleware
...
BruteBuster.middleware.RequestMiddleware',
Block threshhold
BB_MAX_FAILURES = 3
BB_BLOCK_INTERVAL = 3
我想在django模板上显示失败尝试的次数。
答案 0 :(得分:1)
这只是一个模型,所以您可以
from BruteBuster.models import FailedAttempt
from django.db.models import Sum
total_failed = FailedAttempt.objects.filter(
username=request.user.username
).aggregate(
total_failures=Sum('failures')
)['total_failures']
但是这里可能会有一些问题:
BruteBuster
在这里跟踪每个用户名和每个IP的失败次数,因此我们需要对它们进行总结; FailedAttempt
不再有记录,因此在这种情况下可能无法完美运行;和None
,而不是0
,但是您可以在末尾添加or 0
以将None
转换为{{1 }}。