gpt4 book ai didi

python - 未知的密码哈希算法。 PASSWORD_HASHERS 设置 - 使用工厂男孩

转载 作者:太空宇宙 更新时间:2023-11-04 06:16:42 24 4
gpt4 key购买 nike

如果我创建示例用户帐户进行测试,我会遇到此错误:

Unknown password hashing algorithm 'password1'. Did you specify it inthe PASSWORD_HASHERS setting?

class ExampleTest(TestCase):
def test_sample_data(self):
for i in range(0,1):
user = content.factories.UserFactory.create()

工厂.py:

class UserFactory(factory.Factory):
FACTORY_FOR = User

username = factory.Sequence(lambda n: 'User' + n)
email = 'mail@gmail.com'
password = 'password1'

如何解决?

最佳答案

更新。documentation中有描述。 , 你应该使用 factory.PostGenerationMethodCall:

class UserFactory(factory.Factory):
class Meta:
model = User

username = 'user'
password = factory.PostGenerationMethodCall('set_password',
'defaultpassword')

旧答案。实际上,这在 factory-boy documentation 中有描述。 :

class UserFactory(factory.Factory):
@classmethod
def _prepare(cls, create, **kwargs):
password = kwargs.pop('password', None)
user = super(UserFactory, cls)._prepare(create, **kwargs)
if password:
user.set_password(password)
if create:
user.save()
return user

最好使用这个解决方案,这样你就可以正确使用UserFactory.build()UserFactory.create()UserFactory.attributes() (稍后将返回未经哈希处理的密码)

关于python - 未知的密码哈希算法。 PASSWORD_HASHERS 设置 - 使用工厂男孩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15116483/

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