gpt4 book ai didi

python - 使用 super 用户 Django 1.9、Python 3.5 的凭据测试登录

转载 作者:行者123 更新时间:2023-11-28 20:29:14 26 4
gpt4 key购买 nike

我一直在尝试以 super 用户身份登录以测试 Django 1.9 和 Python 3.5 的管理功能,但我的登录一直失败。

这是测试。它总是在最后一个断言时返回 false:

class TestAdmin(TestCase):
def setUp(self):
self.client = Client()
def test_login(self):
my_admin = User(username='user', email='user@email.com')
my_admin.set_password('passphrase')
my_admin.is_superuser=True
my_admin.is_staff=True
response = self.client.get('/admin/', follow=True)
self.assertEqual(response.status_code, 200)
self.assertTrue('Log in' in response.content.decode('utf-8'))
loginresponse = self.client.login(username='user', email='user@email.com',
password='passphrase')
self.assertTrue(loginresponse)

最佳答案

我认为你应该做 my_admin.save()

您的 .is_staff=True 用户需要保存到在测试运行时创建的用户“数据库”中。使用以下脚本权限应该没问题:

class TestAdmin(TestCase):

def setUp(self):
self.client = Client()
self.my_admin = User(username='user', is_staff=True)
my_admin.set_password('passphrase') # can't set above because of hashing
my_admin.save() # needed to save to temporary test db
response = self.client.get('/admin/', follow=True)
loginresponse = self.client.login(username='user',password='passphrase')
self.assertTrue(loginresponse) # should now return "true"

关于python - 使用 super 用户 Django 1.9、Python 3.5 的凭据测试登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36163367/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com