def create_instance_test(): t1 = Teacher.create(name='t1') t2 = Teacher.create(name='t2') s1 = Student.create(name = 's1', teacher=t1) s2 = Student.create(name = 's2', teacher=t1) s3 = Student.create(name = 's3', teacher=t2) s4 = Student.create(name = 's4', teacher=t2)
def teacher_upload_process_controller(): file = request.files['file'] rows = get_row_values(file) rows=rows[1:] for column in rows: new_teacher = Teacher( id=generate_key(), name=column[0], email=column[1]) new_teacher.put() return render_template('all_done.html')
def save(self): user = Account(**self.data) user.save() if self.role.data == 1: stuusr = Student(stuid=self.username.data) stuusr.save() if self.role.data == 3: teausr = Teacher(teaid=self.username.data) teausr.save() return self.username.data, self.role.data
def teacher_registration(request): jsonObj=json.loads(request.body) jsonObj=jsonObj['userInfo'] if User.objects.filter(username = jsonObj['userName']).exists(): print "Username already Exist." return HttpResponse(json.dumps({"validation":"Username is already exist.","status":False}), content_type="application/json") username = jsonObj['userName'].strip() teacherName = jsonObj['teacherName'].strip() password = jsonObj['password'] confirmPassword = jsonObj['confirmPassword'] if password != confirmPassword: print "Passwords Are not Matching" return HttpResponse(json.dumps({"validation":"Passwords are not Matched","status":False}), content_type="application/json") email = validateEmail(jsonObj['email']) if email != True: print "Email is already Exist." return HttpResponse(json.dumps({"validation":"Email is already exist.Try with another Email.","status":False}), content_type="application/json") else: email = jsonObj['email'] mobileNo = jsonObj['mobileNo'] mobileNo = int(mobileNo) mobileNo = validate_mobile(str(mobileNo)) if mobileNo == False: return HttpResponse(json.dumps([{"validation": "This mobile number is already used..please try with another one.", "status": False}]), content_type = "application/json") else: workExperience = jsonObj['workExperience'] areaOfInterestList = jsonObj['areaOfInterestList'] qualification = jsonObj['qualification'] userObj = User(username=userName,email=email,password=password) userObj.set_password(password) userObj.save() teacherObj = Teacher(user=userObj, teacherName=teacherName, qualification=qualification, mobileNo=mobileNo, workExperience=workExperience) teacherObj.save() for i in areaOfInterestList: subjectName = i.subjectName semester = i.semester courseName = i.courseName courseYear = i.courseYear subjectObj = Subject(subjectName=subjectName, semester=semester, courseName=courseName, courseYear=courseYear) teacherObj.areaOfInterest.add(subjectObj) teacherObj.save() print "Registration Successful" return HttpResponse(json.dumps({"validation":"Registration Successful.","redirecturl":"#/login","status":True}), content_type="application/json")
def test_teacher_insert(self): print "in test_teacher_insert" setup(self) self.assertEqual(Teacher.objects.count(), 2) user3 = User(username="******", email="*****@*****.**", first_name="juan", last_name="garcia") user3.save() teacher3 = Teacher() teacher3.teacher = user3 teacher3.save() self.assertEqual(Teacher.objects.count(), 3)
def registert(request): if request.POST: post = request.POST new_teacher = Teacher( Username = post["username"], Password= post["password"], Research_area = post["research_area"], Email = post["email"], Introduction = post["introduction"]) new_teacher.save() return render_to_response("register-t.html")
def teacher_register_view(request): if request.method == "POST": username = request.POST['username'] if not User.objects.filter(username = username).exists(): return render(request, 'reg/teacher_teacher.html', {'error':'Username or email already used, or passwords do not match'}) u = User.objects.get(username = username) t = Teacher(user=u) t.save() return redirect('home') else: if Student.objects.filter(user=request.user).count() > 0 or Teacher.objects.filter(user=request.user).count() > 0 or Parent.objects.filter(user=request.user).count() > 0: return redirect('home') return render(request, 'reg/teacher_register.html')
def setup(self): user1 = User(username="******", email="*****@*****.**", first_name="john", last_name="smith") user2 = User(username="******", email="*****@*****.**", first_name="sally", last_name="smith") user1.save() user2.save() teacher1 = Teacher() teacher1.teacher = user1 teacher1.save() teacher2 = Teacher() teacher2.teacher = user2 teacher2.save() course1 = Course(teacher=teacher1, name="Intro1", position=1) course2 = Course(teacher=teacher2, name="Advanced2", position=2) course1.save() course2.save() lesson1 = Lesson(course=course1, name="Lesson1", description="Intro1 - Lesson1", position=1) lesson2 = Lesson(course=course1, name="Lesson2", description="Intro1 - Lesson2", position=2) lesson1.save() lesson2.save() slide1 = Slide(lesson=lesson1, name="Slide1", content="<h1>Slide1</h1>", position=1, googleStyles=" ") slide2 = Slide(lesson=lesson1, name="Slide2", content="<h1>Slide2</h1>", position=2, googleStyles=" ") slide1.save() slide2.save()
def AddTeacher(request): if request.method == 'POST': form = AddNameForm(request.POST) if form.is_valid(): user = request.user if user.is_authenticated() and IsHead(user): thUser = User.objects.create_user( username=form.cleaned_data['Name'], password=form.cleaned_data['Name']) thUser.save() head = StudyHead.objects.get(ForUser=user) th = Teacher(ForHead=head, User=thUser) th.save() return HttpResponseRedirect("/accounts/")
def flush(): ndb.delete_multi(School.query().fetch(keys_only=True)) ndb.delete_multi(QuestionInstance.query().fetch(keys_only=True)) ndb.delete_multi(State_Questions.query().fetch(keys_only=True)) ndb.delete_multi(Topic_States.query().fetch(keys_only=True)) ndb.delete_multi(Question.query().fetch(keys_only=True)) ndb.delete_multi(State.query().fetch(keys_only=True)) ndb.delete_multi(Address.query().fetch(keys_only=True)) ndb.delete_multi(Teacher.query().fetch(keys_only=True)) ndb.delete_multi(Class.query().fetch(keys_only=True)) ndb.delete_multi(Assessment_Record.query().fetch(keys_only=True)) ndb.delete_multi(Student.query().fetch(keys_only=True)) ndb.delete_multi(UserInfo.query().fetch(keys_only=True)) ndb.delete_multi(Student_Assessments.query().fetch(keys_only=True)) ndb.delete_multi(Assessment.query().fetch(keys_only=True)) ndb.delete_multi(Subject.query().fetch(keys_only=True)) ndb.delete_multi(Topic_Questions.query().fetch(keys_only=True)) ndb.delete_multi(State_Questions.query().fetch(keys_only=True)) ndb.delete_multi(Topic_States.query().fetch(keys_only=True)) ndb.delete_multi(Subject_Topics.query().fetch(keys_only=True)) ndb.delete_multi(Student_Assessments.query().fetch(keys_only=True)) ndb.delete_multi(Topic.query().fetch(keys_only=True)) ndb.delete_multi(User.query().fetch(keys_only=True)) ndb.delete_multi(Assessment_Record.query().fetch(keys_only=True)) ndb.delete_multi(State_Types.query().fetch(keys_only=True))
def setUp(self): if 'TEST_PROVIDER' in os.environ: self.good_provider = os.environ['TEST_PROVIDER'] else: # This is the default server thread started by django test, # but it only works for this app. self.good_provider = 'http://*****:*****@example.com', 'Jeff T', [['MG4', '1st period math', TeacherClass()]]), ('*****@*****.**', 'Jeff J', [['MG4', '5th period math', TeacherClass()]])] self.email1 = self.teacher_data[0][0] self.name1 = self.teacher_data[0][1] self.u1_password = '******' self.u1 = User.objects.create_user(username='******', email='*****@*****.**', password=self.u1_password) user = authenticate(username=self.u1.username, password=self.u1_password) assert user self.teachers = [] for teacher_email, teacher_name, teacher_classes in self.teacher_data: t = Teacher(email=teacher_email, name=teacher_name, user=self.u1) t.full_clean() t.save() self.teachers.append(t) for i in range(len(teacher_classes)): course_id, class_name, _ = teacher_classes[i] c = TeacherClass(name=class_name, course_id=course_id, teacher=t, repo_provider=self.good_provider) c.full_clean() c.save() teacher_classes[i][2] = c # create a calendar entry for the 2nd teacher teacher_2 = self.teacher_data[1] teacher_2_class = teacher_2[2][0][2] e1 = Entry(teacher=self.teachers[1], teacher_class=teacher_2_class, date=datetime.date.today(), objective='MG4-FACTMULT') e1.full_clean() e1.save() self.good_course = 'MG4' self.bad_course = 'xxx' + self.good_course + 'xxx'
def addteacher(request): category = 'Teacher' if request.method == 'POST': form = TeacherForm(request.POST) if form.is_valid(): s = Teacher(first_name=form.cleaned_data["first_name"], last_name=form.cleaned_data["last_name"], email=form.cleaned_data["email"], phone=form.cleaned_data["phone"], office_details=form.cleaned_data["office_details"] ) s.save() return HttpResponseRedirect('/all_teachers/') else: form = TeacherForm() return render_to_response('add.html', {'form': form, 'type': category}, RequestContext(request))
def register(): error = None form = RegisterForm(request.form) if form.validate_on_submit(): teacher = Teacher( first_name=form.first_name.data, last_name=form.last_name.data, email=form.email.data, password=form.password.data, ) try: teacher.put() teacher_id = teacher.key.id() flash(u'Teacher %s successfully saved.' % teacher_id, 'success') return redirect(url_for('login')) except CapabilityDisabledError: flash(u'App Engine Datastore is currently in read-only mode.', 'info') return redirect(url_for('register')) return render_template('register.html', form=form)
def save_article(self, num, content): ''' :param content: a list get from screen ''' chinese_keyword = { 'board': '看板', } author_line = content[0].encode('utf-8').split() if not chinese_keyword['board'] in author_line: return _i = author_line.index(chinese_keyword['board']) author = ' '.join(author_line[1:_i]) title_line = content[1].encode('utf-8').split()[1:] title = ' '.join(title_line) time_line = content[2].encode('utf-8').split()[1:] time = ' '.join(time_line) if not time.find('(') == -1: time = time[time.find('(') + 1:time.find(')')] time = time.split() time.pop(1) time = ' '.join(time) print time article = '\n'.join(content[3:]).encode('utf-8') try: post = Teacher.get(bbs_id=num) post.content = article post.save() logger.info('Update: {id}'.format(id=num)) except Teacher.DoesNotExist: post = Teacher.create(author=author, title=title, pub_time=time, content=article, bbs_id=num ) logger.info('Insert: {id}'.format(id=num))
def get(self): qo = ndb.QueryOptions(keys_only=True) query = Student.query() ndb.delete_multi(query.fetch(1000, options=qo)) query = Teacher.query() for t in query: t.currentMilestone = None t.put() self.redirect('/milestones')
def teacher_controller(id): name = request.values.get('name') email = request.values.get('email') if id: teacher = Teacher.query(Teacher.id==id).get() if teacher: if request.method == 'GET': if request.values.get('json'): return json.dumps(dict(teacher=teacher.json)) return render_template('teacher_view.html',teacher = teacher, title = "Teacher List") elif request.method == 'PUT': teacher = edit_parser(teacher,request) teacher.put() return 'Value Updated', 204 elif request.method == 'DELETE': teacher.key.delete() return 'Item deleted', 204 else: return 'Method Not Allowed' else: if request.method == 'GET': teacher_list = Teacher.query().fetch(1000) entries=None if teacher_list: entries = [teacher.dto() for teacher in teacher_list] if request.values.get('json'): return json.dumps(dict(teacher=entries)) return render_template('teacher.html',teacher_entries = entries, title = "Teacher List") elif request.method == 'POST': teacher = Teacher() teacher = new_parser(teacher,request) teacher.put() url = '/teacher/' if request.values.get('json'): url = '/teacher/json=true' return redirect(url) else: return abort(405)
def login(): error = None if request.method == 'POST': t = Teacher.query(Teacher.email == request.form['email'], Teacher.password == request.form['password']).fetch(1) if len(t) == 0: flash('Email/PW combo not found') else: name = t[0].first_name email = t[0].email session['logged_in'] = True session['name'] = name session['email'] = email flash('You are logged in. Go Crazy.') return redirect(url_for('list_tests')) return render_template('login.html', form = LoginForm(), error = error)
def test_1(self): """Basic creation/update of Teacher""" email = '*****@*****.**' name1 = 'Jeff' name2 = 'Jeff T' t1 = Teacher(email=email, name=name1, user=self.u1) t1.save() t2 = Teacher(email=email, name=name2, user=self.u1) t2.save() obj = Teacher.objects.get(email=email) self.assertEquals(obj.name, name2)
def generatestates(userbuffer,topickey,schoolkey): logging.error("entered g") statesgen =[] numoftype = userbuffer.typeCache.getlength() for questiontype in range(0,numoftype): surmiselist = userbuffer.surmiseRelation.getstates(questiontype) for surmisestate in surmiselist: tobeaddedlist =[] tobeaddedlist.append(surmisestate) for state in statesgen: tobeaddedlist.append(surmisestate.union(state)) for stateadd in tobeaddedlist: if stateadd not in statesgen: statesgen.append(stateadd) stateall = set() num = numoftype-1 while num >= 0: stateall.add(num) logging.error(userbuffer.typeCache.gettype(num)) num-=1 logging.error(stateall) if stateall not in statesgen: statesgen.append(stateall) tobeaddedlist=[] queryreadydict = {} statenum =0 for stateset in statesgen: templist = [] for items in stateset: templist.append(userbuffer.typeCache.gettypekey(items)) queryreadydict[statenum]=templist statenum+=1 session = get_current_session() logging.error(queryreadydict) #user_name = User.query((User.username == 'Vijay_Mehta')).get() teacher = Teacher.query(Teacher.username == 'Vijay_Mehta',ancestor=schoolkey).get() logging.info('@@@@@@@@@@@@@@@@@@@@@@'+str(teacher)) #Query.map_state_to_questions_dummy(queryreadydict,session['schoolkey']) Query.map_state_to_questions(topickey,queryreadydict,schoolkey) count=topickey.get().assessment_count count+=1 class_v=(teacher.classes_under_teacher)[0] #teacher=UserInfo.query() assessment1=Query.addAssessment(name="Know Your Numbers : "+str(count),list_topic_key=[topickey,topickey],school_key=schoolkey,date=datetime.datetime.now(),due_date=datetime.datetime(int(2014),int(11),int(12),int(23),int(12),int(8)),published=True,teacher_key=teacher.key,class_key=class_v) a=Query.get_states_of_topic(topickey)
def fetch_my_teacher(id): student = Student.query(Student.id == id).get() teacher_list = [] schedules = student.get_schedule() for schedule in schedules: teacher = schedule.get_teacher() if teacher.dto() not in teacher_list: teacher_list.append(teacher.dto()) other_list = [] teachers = Teacher.query().fetch(1000) for teacher in teachers: if teacher.dto() not in teacher_list: other_list.append(teacher.dto()) teacher_list = multikeysort(teacher_list, ['name']) teacher_list = add_sort_order(teacher_list) other_list = multikeysort(other_list, ['name']) other_list = add_sort_order(other_list) return json.dumps(dict(my_teacher=teacher_list,other_teachers=other_list))
def import_teacher(request, filter_id): ''' Импорт учителей. ''' render = {} if request.user.type == 'EduAdmin': if request.user.school.id != int(filter_id): raise Http404 render['school'] = school = get_object_or_404(School, id = filter_id) if request.method == 'GET': render['form'] = form = ImportForm() else: render['form'] = form = ImportForm(request.POST, request.FILES) if form.is_valid(): render['errors'] = errors = [] teachers = [] rows = csv.reader(form.cleaned_data['file'], delimiter = ';') i = 0 for row in rows: i += 1 if len(row) < 7: errors.append({'line': i, 'column': 0, 'error': u'неверное количество столбцов'}) continue try: row = ";".join(row) row = row.decode('cp1251') except UnicodeError: errors.append({'line': i, 'column': 0, 'error': u'некорректное значение (невозможно определить кодировку)'}) continue row = row.split(';') if len(row[0]) < 2 or len(row[1]) < 2 or len(row[2]) < 2: errors.append({'line': i, 'column': 0, 'error': u'сликшом короткое ФИО'}) continue try: validate_email(row[3]) except ValidationError: errors.append({'line': i, 'column': 4, 'error': u'email указан неверно'}) continue teacher = Teacher(school = school, last_name = row[0], first_name = row[1], middle_name = row[2], email = row[3]) teacher._subjects = [] t = [j.strip() for j in row[4].split(',')] for sbj in t: try: teacher._subjects.append(Subject.objects.get(name = sbj, school = school)) except Subject.DoesNotExist: errors.append({'line': i, 'column': 5, 'error': u'предмет "%s" не найден' % sbj}) teacher._grades = [] t = [j.strip() for j in row[5].split(',')] for grade in t: if not get_grade(grade): errors.append({'line': i, 'column': 5, 'error': u'класс "%s" не найден' % grade}) continue try: teacher._grades.append(Grade.objects.get(school = school, **get_grade(grade))) except Grade.DoesNotExist: errors.append({'line': i, 'column': 5, 'error': u'класс "%s" не найден' % grade}) if row[6]: if not get_grade(row[6]): errors.append({'line': i, 'column': 6, 'error': u'класс "%s" не найден' % row[6]}) continue try: teacher.grade = Grade.objects.get(school = school, **get_grade(row[6])) except Grade.DoesNotExist: errors.append({'line': i, 'column': 6, 'error': u'класс "%s" не найден' % row[6]}) continue teachers.append(teacher) if len(errors) == 0: for teacher in teachers: teacher.save() [teacher.subjects.add(sbj) for sbj in teacher._subjects] [teacher.grades.add(sbj) for sbj in teacher._grades] teacher.save() messages.success(request, u'Преподаватели импортированы') return HttpResponseRedirect('..') return render_to_response('~userextended/teacherImport.html', render, context_instance = RequestContext(request))
from models import Student, Teacher, Course, Grade, db student0 = Student(name="李玲", gender="女", phone="12345678900") student1 = Student(name="李依", gender="女", phone="12345678901") student2 = Student(name="李贰", gender="男", phone="12345678902") student3 = Student(name="李叁", gender="男", phone="12345678903") student4 = Student(name="李斯", gender="男", phone="12345678904") student5 = Student(name="李舞", gender="女", phone="12345678905") student6 = Student(name="李榴", gender="男", phone="12345678906") student7 = Student(name="李淇", gender="女", phone="12345678907") student8 = Student(name="李巴", gender="男", phone="12345678908") student9 = Student(name="李玖", gender="男", phone="12345678909") teacher0 = Teacher(name="老数", gender="男", phone="12345678910") teacher1 = Teacher(name="老语", gender="女", phone="12345678911") teacher2 = Teacher(name="老英", gender="女", phone="12345678912") teacher3 = Teacher(name="老物", gender="男", phone="12345678913") teacher4 = Teacher(name="老化", gender="男", phone="12345678914") teacher5 = Teacher(name="老生", gender="男", phone="12345678915") course0 = Course(name="数学") course1 = Course(name="语文") course2 = Course(name="英语") course3 = Course(name="物理") course4 = Course(name="化学") course5 = Course(name="生物") # 增 def add_one_by_one(data): db.session.add(data)
def create_table_test(): Teacher.create_table() Student.create_table()
import json from app import db from models import Teacher, Booking, Request teachers_records = json.load(open('mock_db.json', 'r', encoding='utf-8'))[1] teachers = [] for record in teachers_records: goals = " ".join([x for x in record.get("goals")]) print(goals) teacher = Teacher(name=record.get("name"), about=record.get("about"), rating=record.get("rating"), picture=record.get("picture"), price=record.get("price"), goals=goals, free=record.get("free")) teachers.append(teacher) book_records = json.load(open('booking.json', 'r', encoding='utf-8')) bookings = [] for record in book_records: booking = Booking(clientName=record.get("clientName"), clientPhone=record.get("clientPhone"), clientTime=record.get("clientTime"), teacher_id=record.get("clientTeacher")) bookings.append(booking) request_records = json.load(open('request.json', 'r', encoding='utf-8')) requests = [] for record in request_records:
import torch.nn as nn import torch.nn.functional as F import torch.optim as optim import torchvision import scheduler from models import Teacher MNIST_DIR = '../mnist/' # Create gpu device device = torch.device('cuda') print(device) # Create model teacher_model = Teacher() # Transfer teacher_model.to(device) # Define Loss criterion = nn.CrossEntropyLoss(reduction='mean') # Define optimizer optimizer = optim.SGD(teacher_model.parameters(), lr=0.1) # Define schedule for learning rate and momentum lr_init = 0.1 gamma = 0.998 lrs = np.zeros(shape=(3000,)) lr = lr_init
for test_item in tests[subject_name][type_name]: test = Test() test.type_ = type_name if type_name == "选择题": test.question = test_item["question"] + "\nA." + test_item["A"] + "\nB." + \ test_item["B"] + "\nC." + test_item[ "C"] + "\nD." + test_item["D"] else: test.question = test_item["question"] if tests[subject_name] == "填空题": answer = "" for blank in test_item["answer"]: answer += blank else: answer = test_item["answer"] test.answer = answer test.level = test_item["level"] subject.tests.append(test) for i in range(84001, 84111): teacher = Teacher() teacher.id = i last_name = random.choice(last_names) sex = random.choice(["male", "female"]) first_name = random.choice(first_names[sex]) name = last_name + first_name teacher.name = name teacher.password_hash = "pbkdf2:sha256:150000$LssWNeqi$de05643547efe747ad0a14b74ac2e0e036e2d21fcae3be98bd43c94392f2226d" db.session.add(teacher) db.session.commit()
from flask import Flask from models import db, School, Class, Student, Teacher from routes import classesApi, schoolsApi, teachersApi, studentsApi, index app = Flask(__name__) app.register_blueprint(classesApi) app.register_blueprint(schoolsApi) app.register_blueprint(teachersApi) app.register_blueprint(studentsApi) app.register_blueprint(index) db.init_app(app) with app.app_context(): db.create_all() school = School(name='middle50', address='address') db.session.add(school) db.session.commit() group = Class(name='1A', school_id=school.id) db.session.add(group) db.session.commit() db.session.add(Student(name='Vasya', class_id=group.id)) db.session.add(Teacher(name='Irina', class_id=group.id, subject='Math')) db.session.commit() if __name__ == "__main__": app.run()
def get_teacher(self): from models import Teacher teacher = Teacher.query(Teacher.id == self.teacher_id).get() return teacher if teacher else None
def teacher_edit_controller(id): #this is the controller to edit model entries teacher_item = Teacher.query(Teacher.id==id).get() return render_template('teacher_edit.html', teacher_item = teacher_item, title = "Edit Entries")
def get_all_teachers(self, q): df = pd.read_sql("SELECT * FROM Teacher " + q, self.conn) return [ Teacher(*kwargs.values()) for kwargs in df.to_dict(orient='records') ]
def schedule_add_controller(): #this is the controller to add new model entries students = Student.query().fetch(1000) teachers = Teacher.query().fetch(1000) subjects = Subject.query().fetch(1000) return render_template('schedule_add.html', title = "Add New Entry", students=students, teachers=teachers, subjects=subjects)
def register(): if request.form: login = request.form.get("login") password = request.form.get("password") name = request.form.get("name") surname = request.form.get("surname") position = request.form.get("position") if position == "Teacher": teacher = Teacher.auth(login, password) if teacher: return json.dumps({'resultCode': 1}) email = request.form.get("email") phone = request.form.get("phone") qualification = request.form.get("qualification") teacher = Teacher(login, password, name, surname, qualification, phone, email, False) teacher.save() session["auth"] = teacher.id return json.dumps({ 'resultCode': 0, 'data': { 'userId': teacher.id, 'login': login, 'password': password, 'position': position, 'name': name, 'surname': surname, 'email ': email, 'phone ': phone, 'qualification ': qualification } }) elif position == "Pupil": pupil = Pupil.auth(login, password) print(pupil) if pupil: return json.dumps({'resultCode': 1}) clas = request.form.get('clas') pupil = Pupil(name, surname, login, password, clas) pupil.save() school_class = SchoolClass.get_class_by_name(clas) school_class.add_student(pupil.id) session["auth"] = pupil.id return json.dumps({ 'resultCode': 0, 'data': { 'userId': pupil.id, 'login': login, 'password': password, 'position': position, 'name': name, 'surname': surname, 'clas': clas } }) elif position == "Parent": parent = Parent.auth(login, password) if parent: return json.dumps({'resultCode': 1}) child_id = request.form.get("child_id") parent = Parent(name, surname, child_id, login, password) parent.save() session["auth"] = parent.id return json.dumps({ 'resultCode': 0, 'data': { 'userId': parent.id, 'login': login, 'password': password, 'position': position, 'name': name, 'surname': surname, 'child_id': child_id } }) else: return json.dumps({'resultCode': 1})
def jsonTeacherCrud(request): # Display/Filter is only on GET if request.is_ajax() and request.method == 'GET': id = request.GET.get('id', None) action = request.GET.get('action', None) if (action=="filter"): dictData = Teacher.objects.filter(id=id).values() else: dictData = Teacher.objects.all().values() #print dictData jsonData = json.dumps(list(dictData)) return HttpResponse(jsonData, content_type='application/json') # CRUD is only on POST if request.is_ajax() and request.method == 'POST': action = request.POST.get('action', None) #ADD if (action=="add"): codeAfm = request.POST.get('codeAfm', None) codeGrad = request.POST.get('codeGrad', None) codeSpec = request.POST.get('codeSpec', None) surname = request.POST.get('surname', None) name = request.POST.get('name', None) record = Teacher( codeAfm = codeAfm, codeGrad = codeGrad , codeSpec = codeSpec, surname = surname, name=name, ).save() # return Lesson record dictData = Teacher.objects.filter(id=record.id).values() jsonData = json.dumps(dictData) return HttpResponse(jsonData, content_type='application/json') #DELETE if (action=="delete"): id = request.POST.get('id', None) record = Teacher.objects.filter(id=id) try: record.delete() result = "Teacher (%s) deleted successfully." %(record) except IntegrityError: transaction.rollback() result = "Error Teacher (%s) could not be deleted." %(record) return HttpResponse(result, content_type='application/json') #UPDATE elif (action=="update"): id = request.POST.get('id', None) codeAfm = request.POST.get('codeAfm', None) codeGrad = request.POST.get('codeGrad', None) codeSpec = request.POST.get('codeSpec', None) surname = request.POST.get('surname', None) name = request.POST.get('name', None) record = Teacher.objects.filter(id=id) record.update( codeAfm = codeAfm, codeGrad = codeGrad , codeSpec = codeSpec,surname = surname, name=name , ) dictData = record.values() #print dictData jsonData = json.dumps(list(dictData)) return HttpResponse(jsonData, content_type='application/json') # DEFAULT on View else: dictData = Teacher.objects.all().values() jsonData = json.dumps(list(dictData)) #print jsonData return HttpResponse(jsonData, content_type='application/json')
except DoesNotExist,e: errorMsg='无法在%s %s找到%s,%s' % (province_name,city_name,district_name,e) return InvalidUrl(errorMsg) try: school = district.filter(school__name=out['school_name']) except DoesNotExist,e: errorMsg = "can not find school %s in %s" % (out['school_name'],out['district']) return InvalidUrl(errorMsg) try: class_id = school.filter(class__name=out['class_name']) except DoesNotExist,e: errorMsg = "can not find class %s in school %s" % (out['class_name'],out['school_name']) return InvalidUrl(errorMsg) tea = Teacher(name=out['name'],telephone=out['telephone'],email = out['email'],status='NE') tea.save() class_id.add(tea) class_id.save() tea.status='EI' #发送url给学校管理员的邮箱对新注册的老师进行审核 url_yes='' url_no='' mail_title = '幼儿园教师注册审核' mail_content = '教师%s 头像预留正在注册为你的学校%s的教师,请点击下面链接确认是否同意:\n\t同意链接:%s,拒绝链接:%s' % (out['name'],out['school_name'],url_yes,url_no) from_mail = '*****@*****.**' to_mail = ['*****@*****.**'] #这里需要考虑发送邮件失败的情况,目前暂时未处理 send_mail(mail_title,mail_content,from_mail,to_mail,fail_silently = False) tea.status='EI'
def admin_teacher(): create_form = CreateTeacherForm() delete_form = DeleteTeacherForm() delete_form.teachers.query = Teacher.query.all() update_form = UpdateTeacherForm() update_form.teachers.query = Teacher.query.all() if request.method=='POST': if create_form.data['create'] and create_form.validate(): form = create_form teacher = Teacher.query.filter_by(tea_id=form.create_id.data).first() if teacher == None: teacher = Teacher( tea_id=form.create_id.data, tea_name=form.create_name.data, tea_unit=form.create_unit.data ) db.session.add(teacher) db.session.commit() status = u'success' message = u'成功添加教师' session['message']=messages(status, message) return redirect(url_for('admin')) elif delete_form.data['delete'] and delete_form.validate(): form = delete_form teacher = form.teachers.data db.session.delete(teacher) db.session.commit() status = u'warning' message = u'成功删除教师' session['message']=messages(status, message) return redirect(url_for('admin')) elif update_form.data['update'] and update_form.validate(): form = update_form teacher = form.teachers.data name = form.update_name.data unit = form.update_unit.data if name != '': teacher.tea_name = name if unit !='': teacher.tea_unit = unit db.session.add(teacher) db.session.commit() status = u'info' message = u'成功修改教师信息' session['message']=messages(status, message) return redirect(url_for('admin')) return render_template("admin-teacher.html", create_form=create_form, delete_form=delete_form, update_form=update_form )
def get(self): try: # template variable temp = Template(""" <tr> <td> $teacher </td> <td> $city </td> <td> $progress </td> </tr> """) subject = 'Weekly Milestone Progress Report: ' + str(date.today()) body = """ <html> <body> <center><h2>WEEKLY PROGRESS REPORT</h2></center> <table style="width:75%"> <tr> <td><b>Teacher Name</b></td> <td><b>Current Milestone</b></td> <td><b>Miles To Go To Reach Milestone</b></td> </tr> """ # get all of the teacher from the database teachers = Teacher.query() # iterate through list of teachers for result in teachers: # get the current teacher's total miles miles = result.totalClassMiles # get the current teacher's current milestone current_milestone = (result.currentMilestone).get() # get the progress miles_left = current_milestone.goalMiles - miles # add to the body of the email body = body + temp.substitute( teacher=result.name, city=current_milestone.city_name, progress=miles_left) # finish the body body = body + """ </table> </body> </html> """ # set the body as the email message html and send app_id = app_identity.get_application_id() mail.send_mail_to_admins("support@"+app_id+".appspotmail.com", subject, body, html=body) except Exception as message: # Log the error. logging.error(message) raise message
def get(self): data = [t.name for t in Teacher.query()] data = sorted(data, reverse=True) self.response.out.write(json.dumps(data))
def get(self): # a list of teachers that have completed their milestone objective teacherList = [] # get a list of all teachers allTeachers = Teacher.query() # iterate through all teachers for teacher in allTeachers: # get the current milestone for the teacher if not teacher.currentMilestone: currentMilestone = Milestone.query().order(Milestone.goalMiles).get() teacher.currentMilestone = currentMilestone.key teacher.put() else: currentMilestone = teacher.currentMilestone.get() # if the totalClassMiles of a teacher is >= its current milestone goal: if teacher.totalClassMiles >= currentMilestone.goalMiles: # add the teacher to the list teacherList.append((teacher.name, currentMilestone.city_name)) # find the next milestone and assign it to the teacher nextMilestone = Milestone.query(Milestone.goalMiles > int(teacher.totalClassMiles)).order(Milestone.goalMiles).get() # check if there is a milestone if nextMilestone: teacher.currentMilestone = nextMilestone.key teacher.put() # if the teacherList is not empty if teacherList: # create an email to send to the teacher with the names of the teacher rowTemplate = Template(""" <tr> <td>$teacher</td> <td>$milestone</td> </tr> """) body = """ <html><body> <center><h2>Milestone Reached!</h2></center> The following teachers have reached their milestones:<br> <table width='30%' border='1'> <tr> <th>Teacher Name</th> <th>Milestone</th> </tr> """ # for every teacher name that has passed their milestone for t, m in teacherList: body = body + rowTemplate.substitute(teacher=t, milestone=m) body = body + """ </table> </body></html> """ subject = 'A Milestone Has Been Reached! ' + str(date.today()) app_id = app_identity.get_application_id() mail.send_mail_to_admins("support@"+app_id+".appspotmail.com", subject, body, html=body)
def createBuilding(self, building): db.begin() try: Building(name=building.get("name")).save() if building.get("floors") is not None: for floor in building.get("floors"): Floor(level=floor.get("level"), buildingName=building.get("name")).save() if floor.get("waypoints") is not None: for waypoint in floor.get("waypoints"): if ("type" in waypoint): if (waypoint.get("type") == WAYPOINT_TYPES["ClassRoom"]): classRoom = ClassRoom( name=waypoint.get("name"), markerId=waypoint.get("markerId"), buildingName=building.get("name"), floorLevel=floor.get("level"), shapeType=waypoint.get("shapeType"), color=waypoint.get("color"), width=waypoint.get("width"), length=waypoint.get("length"), x=waypoint.get("x"), y=waypoint.get("y")).save() for schedule in waypoint["schedule"]: group = Group.nodes.get_or_none( name=schedule["group"], buildingName=building.get("name")) if group is None: group = Group( name=schedule["group"], buildingName=building.get( "name")).save() group.classes.connect( classRoom, { 'course': schedule["course"], 'dayOfWeek': schedule["dayOfWeek"], 'startTime': schedule["startTime"], 'finishTime': schedule["finishTime"] }) elif (waypoint.get("type") == WAYPOINT_TYPES["Office"]): office = Office( name=waypoint.get("name"), markerId=waypoint.get("markerId"), buildingName=building.get("name"), floorLevel=floor.get("level"), shapeType=waypoint.get("shapeType"), color=waypoint.get("color"), width=waypoint.get("width"), length=waypoint.get("length"), x=waypoint.get("x"), y=waypoint.get("y")).save() for prof in waypoint["professors"]: teacher = Teacher.nodes.get_or_none( name=prof, buildingName=building.get("name")) if teacher is None: teacher = Teacher( name=prof, buildingName=building.get( "name")).save() teacher.office.connect(office) elif (waypoint.get("type") == WAYPOINT_TYPES["Connector"]): Connector( name=waypoint.get("name"), markerId=waypoint.get("markerId"), buildingName=building.get("name"), floorLevel=floor.get("level"), shapeType=waypoint.get("shapeType"), color=waypoint.get("color"), width=waypoint.get("width"), length=waypoint.get("length"), x=waypoint.get("x"), y=waypoint.get("y")).save() else: Waypoint( name=waypoint.get("name"), markerId=waypoint.get("markerId"), buildingName=building.get("name"), floorLevel=floor.get("level"), shapeType=waypoint.get("shapeType"), color=waypoint.get("color"), width=waypoint.get("width"), length=waypoint.get("length"), x=waypoint.get("x"), y=waypoint.get("y")).save() else: Waypoint(name=waypoint.get("name"), markerId=waypoint.get("markerId"), buildingName=building.get("name"), floorLevel=floor.get("level"), shapeType=waypoint.get("shapeType"), color=waypoint.get("color"), width=waypoint.get("width"), length=waypoint.get("length"), x=waypoint.get("x"), y=waypoint.get("y")).save() if floor.get("hallways") is not None: for hallway in floor.get("hallways"): Hallway(name=hallway["name"], markerId=hallway["markerId"], buildingName=building.get("name"), floorLevel=floor.get("level"), shapeType=hallway["shapeType"], color=hallway["color"], width=hallway["width"], length=hallway["length"], x=hallway["x"], y=hallway["y"]).save() if building.get("floors") is not None: for floor in building.get("floors"): if floor.get("waypoints") is not None: for waypoint in floor.get("waypoints"): base = Waypoint.nodes.get( name=waypoint.get("name"), floorLevel=floor.get("level"), buildingName=building.get("name")) for neighbor in waypoint["neighbors"]: base.neighbors.connect( Waypoint.nodes.get( name=neighbor.get("name"), floorLevel=floor.get("level"), buildingName=building.get("name")), { 'direction': neighbor.get("direction") }) self.checkBuilding(building.get("name")) db.commit() return self.get(building.get("name")), 200 except Exception as e: db.rollback() return str(e), 500
def query_test(): t1 = Teacher.get(name='t1') print t1 print t1.students.count() for one in t1.students: print one.name
from app import app from models import db, Teacher, Student, Assignment, StudentAssignment import requests db.drop_all() db.create_all() scott = Teacher.seed_db(name="burden", username="******", password="******") db.session.add(scott) db.session.commit() s = Teacher.query.get(1) s0 = Student.seed_db(name="John A", username="******", password="******", teacher_id=1) s1 = Student.seed_db(name="John B", username="******", password="******", teacher_id=1) s2 = Student.seed_db(name="John C", username="******", password="******", teacher_id=1) s3 = Student.seed_db(name="John D", username="******", password="******", teacher_id=1) s4 = Student.seed_db(name="John E",
#coding=utf-8 from teachingWeb import db from models import Admin, Student, Teacher, Course db.create_all() admin = Admin(name='admin', id=-1) db.session.add(admin) db.session.commit() student = Student(id=121, password='******') db.session.add(student) db.session.commit() teacher = Teacher(id=1, password='******') db.session.add(teacher) db.session.commit() course = Course(name='DB', teacher_id=1) db.session.add(course) db.session.commit()