Beispiel #1
0
def submitted_major():
    verification_code = request.form['verification_code']
    code_text = session['code_text']
    if verification_code != code_text:
        return json.dumps({'error': u'验证码错误'}, ensure_ascii=False)
    code_img, code_string = create_validate_code()
    session['code_text'] = code_string
    try:
        cid = request.form['id']
        name = request.form['name']
        degree = request.form['degree']
        major = request.form['major']
        program_name = request.form['program_name']
        site_url = request.form['site_url']
        if not name or not degree or not major:
            return json.dumps({'error': u'关键信息缺失'}, ensure_ascii=False)
        result = College.query.get(cid)
        if result is None:
            result = College.query.filter_by(
                name=name,
                major=major,
                degree=degree,
                program_name=program_name).one_or_none()
        if result is None:
            if g.user and g.user.is_authenticated and g.user.get_name(
            ) == 'sndnyang':
                college = College(name, degree, major, site_url, program_name)
            else:
                college = TempCollege(name, degree, major, site_url,
                                      program_name)
        else:
            college = result

        college.program_name = program_name
        college.gpa = request.form['gpa'] if request.form['gpa'] else 6.6
        college.gpa_url = request.form['gpa_url']
        college.tuition = request.form['tuition'] if request.form[
            'tuition'] else 66666

        college.tuition_url = request.form['tuition_url']
        college.deadline_url = request.form['deadline_url']
        college.fall = request.form['fall']
        college.spring = request.form['spring']
        college.gre = request.form['gre']
        college.gre_url = request.form['gre_url']
        college.toefl = request.form['toefl'] if request.form['toefl'] else 6.6

        college.ielts = request.form['ielts'] if request.form['ielts'] else 6.6

        college.eng_url = request.form['eng_url']
        college.rl = request.form['rl']
        college.evalue = request.form['evalue']
        college.finance = request.form['finance']
        college.docum_url = request.form['docum_url']
        college.int_docum_url = request.form['int_docum_url']

        info = {}
        l = (len(request.form.keys()) - 23) / 2
        for i in range(l):
            info['label%d' % i] = request.form.get('label%d' % i, '')
            info['input%d' % i] = request.form.get('input%d' % i, '')
        college.info = info

        if result is None:
            db.session.add(college)
        db.session.commit()
    except Exception, e:
        app.logger.debug(traceback.print_exc())
        return json.dumps({'error': u'错误'}, ensure_ascii=False)