Django:urls.py不提供反向匹配错误
我安装了Django:urls.py不提供反向匹配错误,django,django-authentication,lockout,Django,Django Authentication,Lockout,我安装了django axes,它允许您在5次登录失败时设置要重定向到的url。我根据以下命令将此行添加到settings.py: 然后我将这一行添加到users/url.py: path('account/locked/?username=<str>', user_views.account_locked, name='account-locked'), django axes设置axes\u locket\u URL可能需要路径URL(而不是路径名) 因此,您可以尝试更改轴\u
django axes
,它允许您在5次登录失败时设置要重定向到的url。我根据以下命令将此行添加到settings.py:
然后我将这一行添加到users/url.py:
path('account/locked/?username=<str>', user_views.account_locked, name='account-locked'),
django axes
设置axes\u locket\u URL
可能需要路径URL(而不是路径名)
因此,您可以尝试更改轴\u锁定\u URL
如下所示:
AXES_LOCKOUT_URL = 'login/account/locked/'
你的路径应该是这样的
path('account/locked/', user_views.account_locked, name='account-locked'),
谢谢你的建议,我试过了,但是我得到了一个404错误:
请求URL:http://localhost:8000/login/account/locked/?username=user2
@Tom Ah我明白了,出于某种原因,它希望使用“login/”前缀。您可以尝试将此设置更改为AXES\u locket\u URL='login/account/locked/'我仍然会收到与AXES\u locket\u URL='login/account/locked/'相同的404错误。
。这和参数有关吗?例如,将“帐户锁定”username=user2“未找到”反转帐户已锁定?username=user2'不是有效的查看函数或模式名称。
@Tom,是的,我已编辑了答案。查询参数不应该写入路径URL,这种语法意味着使用URL参数而不是查询参数。您发布的答案非常接近,但我必须在settings.py中设置AXES\u locket\u URL='account/locked/'
,在URL.py中设置path('login/account/locked/',user\u views.account\u locked,name='account locked'),
。我会把你的答案记为正确的
AXES_LOCKOUT_URL = 'login/account/locked/'
path('account/locked/', user_views.account_locked, name='account-locked'),