使用dango_get_or_create时的KeyError

时间:2014-10-17 09:03:33

标签: python django factory-boy

我使用Factory Boy 2.4.1,Django 1.4.11和python 2.7与以下工厂:

class UserFactory(factory.django.DjangoModelFactory):
    class Meta:
            model = auth.models.User
            django_get_or_create = ('Bob',)
    username = 'Dan'

每当我尝试使用工厂创建用户时,我得到:

KeyError: 'Bob'

我尝试将现有密钥放入django_get_or_create字段但没有成功。出了什么问题?

正如评论所说,错误的是它应该是django_get_or_create = ('username',);即类的关键,而不是数据库的关键。

1 个答案:

答案 0 :(得分:0)

django_get_or_create = ('username')在文档中,'username'是模型的关键,而不是数据库。将'Bob'更改为模型中的字段是解决方案。感谢您的评论。