def add_student(request): """添加学生基本档案""" form = AddStudentForm(request.POST or None) if form.is_valid(): name = form.cleaned_data["name"] spell_name = form.cleaned_data.get("spell_name", None) print spell_name, bool(spell_name) if not spell_name: from tools import hzpy spell_name = hzpy.hz2py(name) try: max_samename_num = User.objects.filter(username__regex=r'^%s[0-9]+$' % spell_name).\ values_list("username", flat=True).order_by("-username")[0].split(spell_name)[-1] except IndexError,e: new_username = spell_name else: new_username_suffix = int(max_samename_num) + 1 new_username = "******" % (spell_name, new_username_suffix) email = "*****@*****.**" % new_username print "new_username", new_username print "spell_name", spell_name #TODO 创建之前,验证是不是录入同一个人了,通过身份证与编号惟一性来检验 new_user = User.objects.create_user(new_username, email, password="******") #同一个单位组织人可以添加本单位教职工情况 _form = form.save(commit=False) _form.user = new_user _form.spell_name = spell_name _form.identity_group = request.user.person.identity_group _form.identity = "School.Student" _form.school = request.user.person.get_identity_group() _form.save() #save many-to-many form.save_m2m() print new_user print name, new_username
def add_staff(request): """添加基本档案""" from staff.forms import AddStaffForm form = AddStaffForm(request.POST or None) if form.is_valid(): name = form.cleaned_data["name"] from tools import hzpy username = hzpy.hz2py(name) #same_username_list = User.objects.filter(username__startswith=username).values_list("username", flat=True) #new_number_suffix = 2 #for n in same_username_list: #name_suffix = n.split(username)[-1] #if name_suffix.isdigit() and int(name_suffix) >= new_number_suffix: #new_number_suffix = int(name_suffix) + 1 try: max_samename_num = User.objects.filter(username__regex=r'^%s[0-9]+$' % username).\ values_list("username", flat=True).order_by("-username")[0].split(username)[-1] except IndexError,e: new_username_suffix = 2 else: new_username_suffix = int(max_samename_num) + 1 new_username = "******" % (username, new_username_suffix) email = "*****@*****.**" % new_username #TODO 创建之前,验证是不是录入同一个人了,通过身份证与编号惟一性来检验 new_user = User.objects.create_user(new_username, email, password="******") #同一个单位组织人可以添加本单位教职工情况 _form = form.save(commit=False) _form.user = new_user _form.identity_group = request.user.person.identity_group _form.identity = "School.Staff" _form.school = request.user.person.get_identity_group() _form.save() print new_user print name, new_username