def test_eligible_returns_correct_grades(self, test_session): assert ["Grade 7", "Grade 6"] == [ grade.value for grade in Grade.eligible("FLS") ] assert ["Deputy Director (SCS1)"] == [ grade.value for grade in Grade.eligible("SLS") ]
def test_new_grades_returns_correct_grades(self, test_session): current_grade = Grade(value="One below SCS", rank=5) promotion_roles = set( [grade.value for grade in Grade.new_grades(current_grade)] ) assert promotion_roles == {"Grade 7", "Grade 6", "Deputy Director (SCS1)"} assert "Admin Assistant (AA)" not in promotion_roles
def index(): form = GradeForm() if form.validate_on_submit(): grade = Grade(mark=form.mark.data, subject=form.subject.data, timestamp=form.timestamp.data, student=current_user) mpl_timestamp = str(form.timestamp.data) grade.reformat_date(mpl_timestamp) db.session.add(grade) db.session.commit() flash(f'''La note a été ajoutée!''') return redirect(url_for('index')) user = User.query.filter_by(username=current_user.username).first() marks = Grade.query.filter_by(user_id=user.id).order_by( Grade.timestamp).all() subjects = [] graph_data = dict() for m in marks: t = m.timestamp g = m.mark s = m.subject if s in graph_data: graph_data[s].append([g, t]) else: graph_data[s] = [[g, t]] graph = build_graph(graph_data) return render_template('index.html', title='Accueil', user=current_user.username, form=form, graph=graph)
def add_grade(request): # 新增班级数据 names = ['Python班级', 'Java班级', 'Php班级', 'Ios班级'] for name in names: g = Grade() g.g_name = name g.save() return HttpResponse('新增班级数据成功')
def add_grade(): names = ['Python班级', 'Java班级', 'Php班级', 'UI班级'] for name in names: g = Grade() g.g_name = name db.session.add(g) db.session.commit() return '添加班级信息成功'
def addgrad(): grade = Grade() grade.g_name = 'Python18' + str(random.randrange(10,100)) db.session.add(grade) db.session.commit() return '添加班级成功: %s' % grade.g_name
def addgrade(): grade = Grade() grade.name = 'Python19{}'.format(random.randrange(10, 100)) db.session.add(grade) db.session.commit() return render_template('grade.html', grade=grade)
def create_grade(): g = ['Python', 'JAVA', 'C', 'C++'] for i in g: grade = Grade() grade.g_name = i db.session.add(grade) db.session.commit() return '添加班级成功'
def add_grade(): if request.method == 'GET': gnames = ['Python', 'Java', 'Php', 'C++', 'C'] for name in gnames: g = Grade() g.g_name = name db.session.add(g) db.session.commit() return '创建班级成功'
def addgrade(request): if request.method == 'GET': return render(request, 'addgrade.html') if request.method == 'POST': # 创建班级信息 g_name = request.POST.get('g_name') g = Grade() g.g_name = g_name g.save() return HttpResponseRedirect(reverse('app:grade'))
def add_grade(): grades = ['大一','大二','大三','大四'] g_list = [] for i in grades: g = Grade() g.g_name = i # db.session.add(g) g_list.append(g) db.session.add_all(g_list) db.session.commit() return '创建班级成功'
def add_grade(): grades = ['一年级', '二年级', '三年级', '四年级'] g_list = [] for i in grades: g = Grade() g.g_name = i g_list.append(g) # db.session.add(g) db.session.add_all(g_list) db.session.commit() return '创建班级'
def addgrade(request): grade = Grade() arr = ['Python', 'iOS', '测试', 'UI', 'Android'] temp = random.randrange(0, len(arr)) grade.g_name = arr[temp] + '-19' + str(random.randrange(10, 100)) grade.save() return render(request, 'addgrade.html')
def add_grade(): # 批量添加班级信息, add_all g_list = [] grades = ['Python', 'Java', 'Php', 'C++', 'C', 'Ruby', 'Go', '易语言', 'lua'] for grade in grades: g = Grade() g.g_name = grade g_list.append(g) db.session.add_all(g_list) db.session.commit() return '创建班级成功'
def addgrade(request): if request.method == 'POST': grade_name = request.POST.get('grade_name') #Grade.objects.get_or_create(g_name=grade_name) #也可以创建, 但是返回的是一个元组 g = Grade() g.g_name = grade_name g.save() return HttpResponseRedirect(reverse('app:grade')) else: return render(request, 'addgrade.html')
def create_grade(): grade_name = ['Python', 'Java', 'Php', 'VHDL'] g_list = [] for name in grade_name: grade = Grade() grade.g_name = name g_list.append(grade) # db.session.add(grade) # db.session.commit() db.session.add_all(g_list) db.session.commit() return '创建班级成功'
def addgrade(request): if request.method == 'GET': return render(request, 'addgrade.html') if request.method == 'POST': # 获取页面中的grade_name g_name = request.POST.get('grade_name') # 创建一个班级对象 g = Grade() # 修改班级对象的g_name属性 g.g_name = g_name # 保存修改后的值 g.save() return HttpResponseRedirect(reverse('app:grade'))
def add_grade(grade_form): course = grade_form.course_name.data credits = grade_form.credits.data mark = grade_form.grade.data grade = Grade(course=course, credits=credits, grade=mark) db.session.add(grade) db.session.commit()
def addgrade(request): if request.method == 'GET': # g = Grade.objects.get(g_name__contains=grade) # g.save() return render(request, 'addgrade.html') if request.method == 'POST': """创建班级信息""" g_name = request.POST.get('grade_name') g = Grade() g.g_name = g_name g.save() # reverse 这个参数 可以使用命名空间的名字 return HttpResponseRedirect(reverse('app:grade'))
def update_role(): candidate_id = session.get("candidate-id") if not candidate_id: return redirect(url_for("route_blueprint.search_candidate")) if request.method == "POST": session["change-route"] = "route_blueprint.update_role" form_as_dict: dict = request.form.to_dict(flat=False) new_role_title = {"new-title": form_as_dict.pop("new-title")[0]} new_role_numbers = { key: int(value[0]) for key, value in form_as_dict.items() } new_role = {**new_role_numbers, **new_role_title} session["new-role"] = new_role return redirect(url_for("route_blueprint.email_address")) data = { "promotable_grades": Grade.new_grades(Candidate.query.get(candidate_id).current_grade()), "organisations": Organisation.query.all(), "locations": Location.query.all(), "professions": Profession.query.all(), "role_changes": Promotion.query.all(), } return render_template( "updates/role.html", page_header="Role update", data=data, candidate=Candidate.query.get(candidate_id), )
def test_create_result(self): """Tests if new results can be created""" r = Result(identifier='alksdjfklt1034', module=1) db.session.add(r) db.session.commit() g = Grade(name='pi1', score=6, weight=1, result=r.id) db.session.add(g) db.session.commit()
def setUp(self): #creates an virtual environment self.app = app.test_client() #make sure database is empty db.drop_all() db.create_all() g = Grade(mark=100, comment='You did great') db.session.add(g) db.session.commit()
def add_grade(): """添加班级""" if request.method == 'GET': return render_template('addgrade.html') if request.method == 'POST': g_name = request.form.get('g_name') g = Grade.query.filter(Grade.g_name == g_name).first() # 判断要添加的信息数据库中是否存在(因为班级名称不能重复) if g: msg = '*班级名称不能重复,请核对好在来添加' return render_template('addgrade.html', msg=msg) # 创建班级 grade = Grade(g_name) # 保存班级信息 grade.save() return redirect(url_for('user.grade_list'))
def add(branchid): res = dict(status="fail") data = request.json or request.data or request.form print(data) req_values = "min max grade comment".split() for key in req_values: val = data.get(key) if not val: res["statusText"] = errs.BLANK_VALUES_FOR_REQUIRED_FIELDS.text res["statusData"] = errs.BLANK_VALUES_FOR_REQUIRED_FIELDS.type( [key]) return jsonify(res), 200 lower = data.get("min") upper = data.get("max") gradeTxt = data.get("grade") comment = data.get("comment") try: lower = float(lower) except Exception: res["statusText"] = errs.INVALID_VALUE_TYPE.text res["statusData"] = errs.INVALID_VALUE_TYPE.type( ("number or decimal", lower)) return jsonify(res), 200 try: upper = float(upper) except Exception: res["statusText"] = errs.INVALID_VALUE_TYPE.text res["statusData"] = errs.INVALID_VALUE_TYPE.type( ("number or decimal", upper)) return jsonify(res), 200 grades = Grade.query.filter_by(branch_id=branchid).all() for grade in grades: if (grade.lower, grade.upper) == (lower, upper): res["statusText"] = errs.CUSTOM_ERROR.text res["statusData"] = errs.CUSTOM_ERROR.type( "A Grade for this marks range already present") return jsonify(res), 200 grade = Grade(lower, upper, gradeTxt, branchid, comment) db.session.add(grade) db.session.commit() res["status"] = "success" res["grade"] = grade.serialize() return jsonify(res), 200
def readApi(doc_type): if doc_type == "students": data_set = Student.objects() elif doc_type == "grades": data_set = Grade.objects() elif doc_type == "courses": data_set = Course.objects() else: return render_template('404.html', title='404'), 404 return json.dumps({"aaData": MongoEngineJSONEncoder(data_set)}), 200
def students(doctype): if doctype == "students": Student(**request.form).save() elif doctype == "grades": Grade(**request.form).save() elif doctype == "courses": Course(name=request.form.get("name"), students=np.array( request.form.getlist('students[]')).tolist()).save() else: return render_template('404.html', title='404'), 404 return jsonify({'status': 'ok', 'message': "created"}), 201
def add_student_grade(student_id, course_id, grade): try: student = Student.query.filter(Student.id == student_id).first() course = Course.query.filter(Course.id == course_id).first() grade = Grade(grade, performance_id=student_id, course_id=course_id) db.session.add(grade) db.session.commit() return make_response(student.first_name + " " + student.last_name + "'s grade was added to course " + course.name) except Exception: return make_response("An error occured", 500)
def reviewAnswer(quizsetID, current_answer, answer_num): form = GradingForm() current_answer = int(current_answer) answer_num = int(answer_num) if quizsetID is None: return render_template('notify.html', content='the quiz does not exists', buttonText='Back to profile page', link=url_for('user')) if current_answer is answer_num: return render_template('notify.html', content='you have graded all answers', buttonText='Back to profile page', link=url_for('user')) else: answer_dict = Answer.query.filter_by(quizset_id=quizsetID).all() answer = str(answer_dict[int(current_answer)]) answer = answer.split(",") # check whether this answer has been marked #if it has been marked this_answer = Answer.query.filter_by(id=current_answer + 1).first() if this_answer.is_marked(): return redirect( url_for('nextAnswer', quizsetID=quizsetID, current_answer=current_answer, answer_num=answer_num)) else: if form.validate_on_submit(): now_answer = Answer.query.filter_by(id=current_answer + 1).first() now_answer.mark() grade = Grade(mark=form.mark.data, comment=form.comment.data, answer_id=answer[1], answerer_id=int(answer[0])) db.session.add(grade) db.session.commit() return redirect( url_for('nextAnswer', quizsetID=quizsetID, current_answer=current_answer, answer_num=answer_num)) return render_template('reviewAnswer.html', Question=Question, answer=answer[2], questionID=answer[3], form=form)
def index(): rez = r.get("topstudent") ti = '' data = None top_grade = [] if not rez: top_grade = list(Grade.objects().aggregate(*[{ "$group": { "_id": { "student": "$student", "course": "$course" }, "avggrade": { "$avg": "$grade" } } }, { "$sort": { "avggrade": -1 } }, { "$limit": 1 }])) if top_grade: student_db = Student.objects.get(id=top_grade[0]["_id"]["student"]) top_grade[0]["name"] = student_db.firstName top_grade[0]["lname"] = student_db.lastName course_db = Course.objects.get(id=top_grade[0]["_id"]["course"]) s = json.dumps(top_grade[0], indent=4, sort_keys=True) r.set("topstudent", s) r.expire('topstudent', 30) rez = r.get("topstudent") ti = json.dumps(MongoEngineJSONEncoder(course_db), indent=4, sort_keys=True) data = json.loads(rez) return render_template("index.html", top_student=data, loaded=ti)
def extract_grades(page) -> List[Grade]: """ Parses and extract student's grade from the HTML page. """ tree = html.fromstring(page) trs = tree.xpath('//*[@id="votiEle"]/div/table/tbody/tr') grades = [] for tr in trs: tds = tr.xpath('td') grades.append( Grade( tds[0].text_content(), # when tds[1].text_content(), # subject tds[2].text_content(), # type tds[3].text_content(), # value tds[4].text_content(), # comment tds[5].text_content(), # teacher )) return grades