views.py 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. from django.shortcuts import render
  2. from django.http import HttpResponse, HttpResponseRedirect
  3. from .forms import loginForm
  4. from .models import Question, AnswerRecord
  5. # Create your views here.
  6. def index(request):
  7. # homepage
  8. if request.method == 'POST':
  9. lForm = loginForm(request.POST)
  10. if lForm.is_valid():
  11. request.session['username'] = lForm.cleaned_data['username'].strip()
  12. request.session['mobile'] = lForm.cleaned_data['mobile']
  13. return HttpResponseRedirect('/cq/dati/dati')
  14. else:
  15. request.session['time']=0
  16. request.session['correct']=0
  17. return render(request, 'dati/index.html', {'form': loginForm})
  18. def dati(request):
  19. # dati page
  20. quest = Question
  21. if request.method == 'POST':
  22. request.session['time'] = request.session['time'] + 1
  23. quest.ID = request.session['question_id']
  24. quest = Question.search_id(quest)
  25. your_answer = request.POST['answer']
  26. answerRecord = AnswerRecord
  27. answerRecord.user = request.session['username']
  28. answerRecord.mobile = request.session['mobile']
  29. answerRecord.question = quest[0].q
  30. if int(your_answer) == quest[0].answer:
  31. answerRecord.result='正确'
  32. request.session['correct']=request.session['correct']+1
  33. else:
  34. answerRecord.result='错误'
  35. # 用户的答案
  36. if your_answer=='1':
  37. answerRecord.your_answer=quest[0].a1
  38. elif your_answer=='2':
  39. answerRecord.your_answer=quest[0].a2
  40. elif your_answer=='3':
  41. answerRecord.your_answer=quest[0].a3
  42. elif your_answer=='4':
  43. answerRecord.your_answer=quest[0].a4
  44. # 记录正确答案
  45. if quest[0].answer == 1:
  46. answerRecord.correct_answer=quest[0].a1
  47. elif quest[0].answer == 2:
  48. answerRecord.correct_answer=quest[0].a2
  49. elif quest[0].answer == 3:
  50. answerRecord.correct_answer=quest[0].a3
  51. elif quest[0].answer == 4:
  52. answerRecord.correct_answer=quest[0].a4
  53. AnswerRecord.add_record(answerRecord)
  54. if request.session['time']==10:
  55. message = '本次答题,你答对了'+str(request.session['correct'])+'题,继续努力哟!'
  56. return render(request, 'dati/directPage.html', {'alertMsg': message, 'dirLink': '/cq/dati'})
  57. quest = Question.get_random_question()[0]
  58. request.session['question_id'] = quest.ID
  59. try:
  60. user = request.session['username']
  61. mobile = request.session['mobile']
  62. except:
  63. return HttpResponseRedirect('/cq/dati')
  64. return render(request, 'dati/dati.html', {'question': quest})
  65. def history(request):
  66. ansRecord = AnswerRecord
  67. ansRecord.user = request.session['username']
  68. ansRecord.mobile = request.session['mobile']
  69. ansRecord = AnswerRecord.get_record(ansRecord)
  70. return render(request, 'dati/history.html', {'history': ansRecord})