list.html 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. {% extends "base.html" %}
  2. {% load static %}
  3. {% block title %}
  4. 首页
  5. {% endblock title %}
  6. {% block content %}
  7. <div class="container">
  8. <nav aria-label="breadcrumb">
  9. <ol class="breadcrumb">
  10. <li class="breadcrumb-item">
  11. <a href="{% url 'article:article_list' %}?search={{ search }}">
  12. 最新
  13. </a>
  14. </li>
  15. <li class="breadcrumb-item">
  16. <a href="{% url 'article:article_list' %}?order=total_views&search={{ search }}">
  17. 最热
  18. </a>
  19. </li>
  20. </ol>
  21. </nav>
  22. <div class="row">
  23. <div class="col-auto mr-auto">
  24. <form class="form-inline">
  25. <label class="sr-only">
  26. content
  27. </label>
  28. <input type="text" class="form-control mb-2 mr-sm-2" name="search" placeholder="搜索文章..." required>
  29. </form>
  30. </div>
  31. </div>
  32. {% if search %}
  33. {% if articles %}
  34. <h4>
  35. <span style="color: red">"{{ search }}"</span>的搜索结果如下:
  36. </h4>
  37. <hr>
  38. {% else %}
  39. <h4>
  40. 暂无
  41. <span style="color: red">"{{ search }}"</span>有关的文章。
  42. </h4>
  43. {% endif %}
  44. {% endif %}
  45. <div class="row mt-2">
  46. {% for article in articles %}
  47. <div class="col-4 mb-4">
  48. <div class="card h-100">
  49. <h4 class="card-header">
  50. {{ article.title }}
  51. </h4>
  52. <div class="card-body">
  53. <p class="card-text">
  54. {{ article.body|slice:'100' }}...
  55. </p>
  56. </div>
  57. <div class="card-footer">
  58. <a href="{% url 'article:article_detail' article.id %}" class="btn btn-primary">
  59. 阅读本文
  60. </a>
  61. <span>
  62. <small class="col align-self-end" style="color: gray;">
  63. 浏览:{{ article.total_views }}
  64. </small>
  65. </span>
  66. </div>
  67. </div>
  68. </div>
  69. {% endfor %}
  70. </div>
  71. <div class="pagination row">
  72. <div class="m-auto">
  73. <span class="step-links">
  74. <!--如果不是第一页,则显示上翻的按钮-->
  75. {% if articles.has_previous %}
  76. <a href="?page=1&order={{ order }}&search={{ search }}" class="btn btn-success">
  77. &laquo;1
  78. </a>
  79. <span>...</span>
  80. <a href="?page={{ articles.previous_page_number }}&order={{ order }}&search={{ search }}" class="btn btn-secondary">
  81. {{ articles.previous_page_number }}
  82. </a>
  83. {% endif %}
  84. <!--当前页面-->
  85. <span class="current btn btn-danger btn-lg">
  86. {{ articles.number }}
  87. </span>
  88. {% if articles.has_next %}
  89. <a href="?page={{ articles.next_page_number }}&order={{ order }}&search={{ search }}" class="btn btn-secondary">
  90. {{ articles.next_page_number }}
  91. </a>
  92. <span>...</span>
  93. <a href="?page={{ articles.paginator.num_pages }}&order={{ order }}&search={{ search }}" class="btn btn-success">
  94. {{ articles.paginator.num_pages }} &raquo
  95. </a>
  96. {% endif %}
  97. </span>
  98. </div>
  99. </div>
  100. </div>
  101. {% endblock content %}