manage_user.html 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. {% extends "base.html" %}
  2. {% block title %}{% if action == 'add' %}添加用户{% else %}编辑用户{% endif %} - 管理后台{% endblock %}
  3. {% block content %}
  4. <div class="container mt-4">
  5. <div class="row">
  6. <div class="col-md-8 mx-auto">
  7. <div class="card shadow-sm">
  8. <div class="card-header bg-primary text-white">
  9. <h4 class="mb-0">
  10. <i class="bi bi-person-{% if action == 'add' %}plus{% else %}gear{% endif %} me-2"></i>
  11. {% if action == 'add' %}添加新用户{% else %}编辑用户{% endif %}
  12. </h4>
  13. </div>
  14. <div class="card-body">
  15. <form method="POST" action="">
  16. {{ form.hidden_tag() }}
  17. <div class="mb-3">
  18. {{ form.username.label(class="form-label") }}
  19. {{ form.username(class="form-control") }}
  20. {% for error in form.username.errors %}
  21. <div class="text-danger small">{{ error }}</div>
  22. {% endfor %}
  23. </div>
  24. <div class="mb-3">
  25. {{ form.email.label(class="form-label") }}
  26. {{ form.email(class="form-control") }}
  27. {% for error in form.email.errors %}
  28. <div class="text-danger small">{{ error }}</div>
  29. {% endfor %}
  30. </div>
  31. <div class="mb-3">
  32. {{ form.password.label(class="form-label") }}
  33. {{ form.password(class="form-control") }}
  34. {% for error in form.password.errors %}
  35. <div class="text-danger small">{{ error }}</div>
  36. {% endfor %}
  37. </div>
  38. <div class="mb-3">
  39. {{ form.password_confirm.label(class="form-label") }}
  40. {{ form.password_confirm(class="form-control") }}
  41. {% for error in form.password_confirm.errors %}
  42. <div class="text-danger small">{{ error }}</div>
  43. {% endfor %}
  44. </div>
  45. <div class="mb-3 form-check">
  46. {{ form.is_admin(class="form-check-input") }}
  47. {{ form.is_admin.label(class="form-check-label") }}
  48. </div>
  49. <div class="d-grid gap-2">
  50. {{ form.submit(class="btn btn-primary") }}
  51. <a href="{{ url_for('admin') }}" class="btn btn-secondary">取消</a>
  52. </div>
  53. </form>
  54. </div>
  55. </div>
  56. </div>
  57. </div>
  58. </div>
  59. {% endblock %}