Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用dango_get_或_create时出现键错误_Python_Django_Factory Boy - Fatal编程技术网

Python 使用dango_get_或_create时出现键错误

Python 使用dango_get_或_create时出现键错误,python,django,factory-boy,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' 每次我尝试使用工厂创建用户时,我都会得到: Ke

我在以下工厂中使用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\u get\u或\u create
字段,但没有成功。怎么了


正如评论所说,问题在于它应该是
django_get_或_create=('username',)
;即类的键,而不是数据库的键。

django\u get\u或\u create=('username')
如文档中所示,
'username'
是模型的键,而不是数据库的键。将“Bob”更改为模型中的字段是解决方案。感谢您的评论。

django\u get\u或\u create的元组由模型字段组成
Bob
不是一个字段,你想做什么?是的,就在这之前,通过实际阅读和理解代码中“键”的含义,了解到了这一点。这是一个裸体的人。该行应为
django\u get\u或\u create=('username')