為什么user.last_login None在以下測驗中:
from django.test import TestCase, Client
class TestModels(TestCase):
@classmethod
def setUpTestData(self):
self.user = User.objects.create(
username="testUser", password="testPassword"
)
self.auth_client = Client()
self.auth_client.login(username="testUser", password="testPassword")
def test_user_last_login(self):
user = User.objects.get(id=self.user.id) # pull the latest data
print(user.last_login). # <-- this is None, why?!
self.assertIsNotNone(user.last_login)
我顯然在登錄,然后從資料庫中查詢用戶以重繪 資料。
uj5u.com熱心網友回復:
last_login沒有更新,因為您沒有登錄。所有用戶密碼都是加密的,所以當您創建這樣的用戶時,他的密碼將是純文本的,您將無法通過它進行身份驗證。要使用加密密碼創建用戶,請更改
self.user = User.objects.create(
username="testUser", password="testPassword"
)
至
self.user = User.objects.create_user(
username="testUser", password="testPassword"
)
你的測驗將通過
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/487016.html
