1

如何创建十个User对象?

for i in range(11):
    i = User.objects.create(username = 'test125', email='test@mail.com', password='pass1')

username不是唯一的

4

3 回答 3

3

你在场上有一个独特的约束,username这意味着你不能有两个相同的对象username。试试这个:

for i in range(10):
    i = User.objects.create(username = 'testX%s' % i, email='test@mail.com', password='pass1')
于 2013-01-24T15:25:00.423 回答
1

您遇到的问题是您修复了该username值,因此您尝试创建 10 个具有相同名称的用户。

只需对用户名使用某种变体,例如username='testuser-{}'.format(i)

于 2013-01-24T15:25:45.390 回答
0

您需要更改每条记录的名称。

您将每个用户命名为“test125”。尝试连接每个新记录的索引:

for i in range(11):
    i = User.objects.create(username = 'test%s' % i, email='test@mail.com', password='pass1')

您很可能需要对“电子邮件”列执行相同的操作:

for i in range(11):
    i = User.objects.create(username = 'test%s' % i, email='test%s@mail.com' % i, password='pass1')

此外,将新对象分配给与索引相同的变量通常不是一个好主意。尝试与“i”不同的东西。

于 2013-01-24T15:34:13.140 回答