header.html 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <!-- 定义导航栏 -->
  2. <nav class="navbar navbar-expand-lg navbar-dark bg-dark">
  3. <div class="container">
  4. <!-- 导航栏商标 -->
  5. <a class="navbar-brand" href="#">我的博客</a>
  6. <!-- 导航入口 -->
  7. <div>
  8. <ul class="navbar-nav">
  9. <!-- 条目 -->
  10. <li class="nav-item">
  11. <a class="nav-link" href="{% url 'article:article_create' %}">写文章</a>
  12. </li>
  13. <li class="nav-item">
  14. <a class="nav-link" href="{% url 'article:article_list' %}">文章</a>
  15. </li>
  16. <!-- Django的 if 模板语句 -->
  17. {% if user.is_authenticated %}
  18. <!-- 如果用户已经登录,则显示用户名下拉框 -->
  19. <li class="nav-item dropdown">
  20. <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button"
  21. data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
  22. {{ user.username }}
  23. </a>
  24. <div class="dropdown-menu" aria-labelledby="navbarDropdown">
  25. <a class="dropdown-item" href="{% url 'userprofile:logout' %}">退出登录</a>
  26. <a class="dropdown-item" href="#" onclick="user_delete()">删除用户</a>
  27. </div>
  28. {% if user.is_authenticated %}
  29. <form
  30. style="display:none;"
  31. id="user_delete"
  32. action="{% url 'userprofile:delete' user.id %}"
  33. method="POST"
  34. >
  35. {% csrf_token %}
  36. <button type="submit">发送</button>
  37. </form>
  38. <script>
  39. function user_delete() {
  40. // 调用layer弹窗组件
  41. layer.open({
  42. title: "删除用户",
  43. content: "确认删除用户资料吗?",
  44. yes: function (index, layero) {
  45. $('form#user_delete button').click();
  46. layer.close(index);
  47. },
  48. })
  49. }
  50. </script>
  51. {% endif %}
  52. </li>
  53. <!-- 如果用户未登录,则显示 “登录” -->
  54. {% else %}
  55. <li class="nav-item">
  56. <a class="nav-link" href="{% url 'userprofile:login' %}">登录</a>
  57. </li>
  58. <!-- if 语句在这里结束 -->
  59. {% endif %}
  60. </ul>
  61. </div>
  62. </div>
  63. </nav>