django中的用戶模型 內部帶有很多的屬性方法,我們可以直接使用
1 is_staff
Boolean。決定用戶是否可以訪問admin管理界面。默認False。
2 is_active
Boolean。 用戶是否活躍,默認True。一般不刪除用戶,而是將用戶的is_active設為False。
3 is_authenticated()
用戶是否通過驗證,登陸。
4 make_password(password)
給密碼加密 django自帶的加密功能是hash 加鹽
5 check_password(password)
檢查用戶輸入的密碼是否正確
6 set_password(password)
修改用戶密碼
7 authenticate()
from django.contrib.auth import authenticate, login, logout
def post(self, request): username = request.POST.get('username', '') password = request.POST.get('password', '') form = LoginForm(request.POST) if form.is_valid(): try: user = UserProfile.objects.get(Q(username=username)|Q(email=username)|Q(mobile=username)) except: return render(request, 'login.html', {'errors': u"用戶不存在!請先注冊"}) if user.is_active: user1 = authenticate(username=username, password=password) if user1 is None: return render(request, 'login.html', {'errors': u"用戶名/密碼有誤!"}) login(request, user1) return render(request, 'index.html') else: return render(request, 'login.html', {'errors': u"該用戶尚未激活!"}) return render(request, 'login.html', {'form': form})8 last_login
上一次的登錄時間,為datetime對象,默認為當時的時間。
user.last_login
=
timezone.now()
可以判斷當前用戶是否登錄
10 request.user.username
獲取當前登錄用戶的用戶名