forked from mrlan/EnglishPal
				
			[IMPROVE]:main.py:完型填空请求和计分接口
							parent
							
								
									4870772f1f
								
							
						
					
					
						commit
						241708af9c
					
				
							
								
								
									
										39
									
								
								app/main.py
								
								
								
								
							
							
						
						
									
										39
									
								
								app/main.py
								
								
								
								
							|  | @ -11,6 +11,7 @@ from Article import * | |||
| import Yaml | ||||
| from user_service import userService | ||||
| from account_service import accountService | ||||
| from cloze.create_clozeTest import Essay | ||||
| app = Flask(__name__) | ||||
| app.secret_key = 'lunch.time!' | ||||
| 
 | ||||
|  | @ -68,9 +69,10 @@ def mark_word(): | |||
|         for word in request.form.getlist('marked'): | ||||
|             lst.append((word, 1)) | ||||
|         d = pickle_idea.merge_frequency(lst, lst_history) | ||||
|         pickle_idea.save_frequency_to_pickle(d, path_prefix + 'static/frequency/frequency.p') | ||||
|         pickle_idea.save_frequency_to_pickle( | ||||
|             d, path_prefix + 'static/frequency/frequency.p') | ||||
|         return redirect(url_for('mainpage')) | ||||
|     else: # 不回应GET请求 | ||||
|     else:  # 不回应GET请求 | ||||
|         return 'Under construction' | ||||
| 
 | ||||
| 
 | ||||
|  | @ -88,7 +90,8 @@ def mainpage(): | |||
|         d = load_freq_history(path_prefix + 'static/frequency/frequency.p') | ||||
|         lst_history = pickle_idea.dict2lst(d) | ||||
|         d = pickle_idea.merge_frequency(lst, lst_history) | ||||
|         pickle_idea.save_frequency_to_pickle(d, path_prefix + 'static/frequency/frequency.p') | ||||
|         pickle_idea.save_frequency_to_pickle( | ||||
|             d, path_prefix + 'static/frequency/frequency.p') | ||||
|         return render_template('mainpage_post.html', lst=lst, yml=Yaml.yml) | ||||
| 
 | ||||
|     elif request.method == 'GET':  # when we load a html page | ||||
|  | @ -101,14 +104,34 @@ def mainpage(): | |||
|                                d_len=d_len, lst=lst, yml=Yaml.yml) | ||||
| 
 | ||||
| 
 | ||||
| essay = Essay() | ||||
| 
 | ||||
| 
 | ||||
| @app.route('/goCroze', methods=['GET', 'POST']) | ||||
| def go_ClozeTest(): | ||||
|     if request.method == 'GET': | ||||
|         essay._article_id += 1 | ||||
|         essay.create_crozeTest(essay) | ||||
| 
 | ||||
|         return render_template('clozeTest.html', essay=essay, answers=None) | ||||
|     if request.method == 'POST': | ||||
|         score = 0 | ||||
|         # submit_answers = [] | ||||
|         questions = essay._questions | ||||
|         answers = essay._answers | ||||
| 
 | ||||
|         for i in range(0, len(answers)): | ||||
|             ans = request.form.get('answer' + str(i+1)) | ||||
|             if ans: | ||||
|                 ans = ans.upper() | ||||
|                 no = ord(ans)-ord('A') | ||||
|                 if questions[i][no] == answers[i]: | ||||
|                     score += 10 | ||||
|         return render_template('clozeTest.html', essay=essay, msg=f'你的分数是: {score}', answers=answers) | ||||
| 
 | ||||
| 
 | ||||
| if __name__ == '__main__': | ||||
|     ''' | ||||
|     运行程序 | ||||
|     ''' | ||||
|     # app.secret_key = os.urandom(16) | ||||
|     # app.run(debug=False, port='6000') | ||||
|     app.run(debug=True) | ||||
|     # app.run(debug=True, port='6000') | ||||
|     # app.run(host='0.0.0.0', debug=True, port='6000') | ||||
|     # print(mod5('123')) | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue