
import random
import string
from django.db import models
# Create your models here.
class Student(models.Model):
name = models.CharField(max_length=64)
age = models.IntegerField(default=18)
sex = models.IntegerField(choices=((1, '男'), (2, '女')), default=1)
card = models.CharField(max_length=128)
@classmethod
def insert_test_data(self,num):
"""
批量生成测试数据
:param num: 记录数
:return:
"""
def random_str(row_ite, length):
"""
:param row_ite: 从指定的可迭代的原始数据中获取字符
:param length: 字符串的长度
:return: 随机的字符串
"""
return random.choices(row_ite, k=length)
obj_li = []
for _ in range(num):
obj_li.append(Student(
name = random_str(string.ascii_lowercase, random.randint(6,10)),
age = random.randint(18,26),
sex = random.choice([1,2]),
card = random_str(string.digits,18)
))
Student.objects.bulk_create(obj_li)
老师,我在运行上述代码插入数据的时候出现了上图中的错误,修改了类中的max_length也没用,求教。。。