def create_student(): try: print('创建学生'.center(60, '=')) name = input("请输入姓名: ").strip() age = input("请输入年龄: ").strip() if name == '' or age == '': raise Exception("输入不能为空") if age.isdigit(): age = int(age) else: raise Exception("年龄应该是数字") student_name_list = [obj.name for obj in Student.get_all_obj_list()] if name in student_name_list: raise Exception("学生[%s]已存在" % name) school_list = School.get_all_obj_list() for k, obj in enumerate(school_list): print(k, '[%s] [%s]校区' % (obj.name, obj.addr)) s_sid = input("请选择学校:") if s_sid.isdigit(): s_sid = int(s_sid) if s_sid >= len(school_list): raise Exception("输入的学校不存在") else: raise Exception("输入的学校不存在") classes_list = Classes.get_all_obj_list() for k, obj in enumerate(classes_list): print(k, obj.name, '[%s]校区' % (obj.school_nid.get_obj_by_nid().addr)) sid = input("请选择班级:") if sid.isdigit(): sid = int(sid) if sid >= len(classes_list): raise Exception("输入的班级不存在") else: raise Exception("输入的班级不存在") if school_list[s_sid].nid.nid != classes_list[sid].school_nid.nid: raise Exception("[%s][%s]校区没有 [%s]班级" % (school_list[s_sid].name, school_list[s_sid].addr, classes_list[sid].name)) print( "学费为: ", classes_list[sid].course_to_teacher_list_nid. get_obj_by_nid().course_nid.get_obj_by_nid().price) obj = Student(name, age, classes_list[sid].nid) obj.save() status = True error = '' data = '\033[33;1m学生[%s] 创建成功\033[0m' % name except Exception as e: status = False error = str(e) data = '' return {'status': status, 'error': error, 'data': data}
def show_student(): for obj in Student.get_all_obj_list(): print('\033[33;1m [%s][%s]校区 班级[%s] 学生[%s] \033[0m'.center(60, '-') \ % (obj.classes_nid.get_obj_by_nid().school_nid.get_obj_by_nid().name, obj.classes_nid.get_obj_by_nid().school_nid.get_obj_by_nid().addr, obj.classes_nid.get_obj_by_nid().name, obj.name))