app.py 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. """
  2. Backend
  3. """
  4. from flask_login import login_required, current_user
  5. from flask_menu import register_menu
  6. from flask import render_template, request, redirect, url_for, flash, Blueprint
  7. from app import db
  8. from app.models import User
  9. BLUEPRINT = Blueprint(
  10. 'backend_user',
  11. __name__,
  12. template_folder='templates'
  13. )
  14. @BLUEPRINT.route('/edit/<int:user_id>', methods=["GET", "POST"])
  15. @login_required
  16. def edit(user_id):
  17. """User editing"""
  18. user = User.query.get(user_id)
  19. if request.method == 'POST':
  20. user.name = request.form['name']
  21. db.session.add(user)
  22. db.session.commit()
  23. flash('User "%s" successfully edit' % user.name, 'success')
  24. return render_template(
  25. 'user/edit.j2',
  26. user=user,
  27. )
  28. @BLUEPRINT.route('/approve/<int:user_id>')
  29. @login_required
  30. def approve(user_id):
  31. """User removing"""
  32. user = User.query.get(user_id)
  33. user.approved = True
  34. db.session.add(user)
  35. db.session.commit()
  36. flash('User "%s" successfully approved.' % user.name, 'success')
  37. return redirect(url_for('backend.index'))
  38. @BLUEPRINT.route('/remove/<int:user_id>')
  39. @login_required
  40. def remove(user_id):
  41. """User removing"""
  42. user = User.query.get(user_id)
  43. db.session.delete(user)
  44. db.session.commit()
  45. flash('User "%s" successfully removed.' % user.name, 'success')
  46. return redirect(url_for('backend.index'))
  47. @BLUEPRINT.route('/view/<int:user_id>')
  48. @login_required
  49. def view(user_id):
  50. """Display user"""
  51. user = User.query.get(user_id)
  52. return render_template('user/view.j2', user=user)