Advertisement
Guest User

Untitled

a guest
Nov 13th, 2019
193
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.72 KB | None | 0 0
  1. from flask import Flask, render_template, request, redirect, url_for
  2. from Forms import CreateUserForm
  3. import shelve, User
  4.  
  5. app = Flask(__name__)
  6.  
  7. @app.route('/')
  8. def home():
  9. return render_template('home.html')
  10.  
  11. @app.route('/contactUs')
  12. def contactUs():
  13. return render_template('contactUs.html')
  14.  
  15. @app.route('/createUser', methods=['GET', 'POST'])
  16. def createUser():
  17. createUserForm = CreateUserForm(request.form)
  18. if request.method == 'POST' and createUserForm.validate():
  19. usersDict = {}
  20. db = shelve.open('storage.db', 'c')
  21.  
  22. try:
  23. usersDict = db['Users']
  24. except:
  25. print("Error in retrieving Users from storage.db.")
  26.  
  27. user = User.User(createUserForm.firstName.data, createUserForm.lastName.data, createUserForm.gender.data, createUserForm.membership.data, createUserForm.remarks.data)
  28. usersDict[user.get_userID()] = user
  29. db['Users'] = usersDict
  30. db.close()
  31.  
  32. return redirect(url_for('retrieveUsers'))
  33. return render_template('createUser.html', form=createUserForm)
  34.  
  35. @app.route('/retrieveUsers')
  36. def retrieveUsers():
  37. usersDict = {}
  38. db = shelve.open('storage.db', 'r')
  39. usersDict = db['Users']
  40. db.close()
  41.  
  42. usersList = []
  43. for key in usersDict:
  44. user = usersDict.get(key)
  45. usersList.append(user)
  46.  
  47. return render_template('retrieveUsers.html', usersList=usersList, count=len(usersList))
  48.  
  49.  
  50. @app.route('/updateUser/<int:id>/', methods=['GET', 'POST'])
  51. def updateUser(id):
  52. updateUserForm = CreateUserForm(request.form)
  53. if request.method == 'POST' and updateUserForm.validate():
  54. userDict = {}
  55. db = shelve.open('storage.db', 'w')
  56. userDict = db['Users']
  57. user = userDict.get(id)
  58. user.set_firstName(updateUserForm.firstName.data)
  59. user.set_lastName(updateUserForm.lastName.data)
  60. user.set_membership(updateUserForm.membership.data)
  61. user.set_gender(updateUserForm.gender.data)
  62. user.set_remarks(updateUserForm.remarks.data)
  63. db['Users'] = userDict
  64. db.close()
  65.  
  66. return redirect(url_for('retrieveUsers'))
  67. else:
  68. userDict = {}
  69. db = shelve.open('storage.db', 'r')
  70. userDict = db['Users']
  71. db.close()
  72. user = userDict.get(id)
  73. updateUserForm.firstName.data = user.get_firstName()
  74. updateUserForm.lastName.data = user.get_lastName()
  75. updateUserForm.membership.data = user.get_membership()
  76. updateUserForm.gender.data = user.get_gender()
  77. updateUserForm.remarks.data = user.get_remarks()
  78. return render_template('updateUser.html', form=updateUserForm)
  79.  
  80.  
  81. if __name__ == '__main__':
  82. app.run()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement