1
在我的系統中,用戶首先進入系統並且必須更改其密碼。 我有一個更改密碼的視圖,問題是當頁面重新加載用戶會話丟失並強制用戶重新登錄。 我不知道如何改變這種行爲。我的代碼Django無需再次登錄即可更改密碼
views.py
def change_password(request):
if request.method == 'POST':
data = request.body
change = json.loads(data)
id = change["id"]
password = change["password"]
user = get_object_or_404(CustomUser, pk=id)
user.set_password(password)
user.save()
return HttpResponse('success')
def login_success(request):
if request.user.groups.filter(name="group1").exists():
return redirect(group1)
elif request.user.groups.filter(name="group2").exists():
return redirect(group2)
elif request.user.groups.filter(name="group3").exists():
return redirect(group3)
else:
return redirect(group4)
概述我使用的是CustomUser型號
models.py
class CustomUser(AbstractBaseUser, PermissionsMixin):
...
login = models.BooleanField(_('login'), default=False, blank=True)
...
在我的模板。
{% if user.login %}
<h1>Hi User</h1>
{% else %}
<form name="changePass" method="post">
</form>
{% endif %}
我需要的用戶保持在即使更改密碼後,我在模板中做的是改變我customuser登錄變量的狀態記錄下來。
我感謝任何答案或幫助,謝謝,併爲我的英語感到抱歉。