Przeglądaj źródła

Added pagination to the dashboard

Mohidul Islam 5 lat temu
rodzic
commit
52371fc77c

+ 1 - 2
analytics/templates/analytics.html

@@ -1,6 +1,6 @@
 {% extends "base.html" %}
 {% block report %}
-    <div class="mt-2">
+    <div>
         <select id="location" class="select-style">
             {% for loc in location_list %}
                 <option value="{{loc.location_id}}">{{ loc.care_name }}</option>
@@ -19,7 +19,6 @@
         <div id="pie-chart-container" style="position: relative; width: 40%;">
         </div>
     </div>
-<br>
 <br>
     <div id="line-chart-container">
 <!--        <canvas id="lineChart" width="400" height="150" class="mt-4"></canvas>-->

+ 3 - 3
analytics/templates/charts.html

@@ -112,9 +112,9 @@
                     {
                         label: 'All Reviews',
                         data: data.total_reviews,
-                        borderColor: 'rgb(75, 192, 192)',
-                        backgroundColor: 'rgb(75, 192, 192)',
-                        borderWidth: 3,
+                        borderColor: 'rgb(45, 63, 94)',
+                        backgroundColor: 'rgb(158, 181, 222)',
+                        borderWidth: 1,
                         fill: false
                     }]
                 },

+ 23 - 0
dashboard/templates/dashboard.html

@@ -29,4 +29,27 @@
 
 </article>
 {% endfor %}
+    <div align="center">
+        {% if reviews.has_other_pages %}
+
+          {% if reviews.has_previous %}
+            <a class="btn btn-outline-info mb-4" href="?page=1">First</a>
+            <a class="btn btn-outline-info mb-4" href="?page={{ reviews.previous_page_number }}">Previous</a>
+          {% endif %}
+
+          {% for num in reviews.paginator.page_range %}
+            {% if reviews.number == num %}
+              <a class="btn btn-info mb-4" href="?page={{ num }}">{{ num }}</a>
+            {% elif num > reviews.number|add:'-3' and num < reviews.number|add:'3' %}
+              <a class="btn btn-outline-info mb-4" href="?page={{ num }}">{{ num }}</a>
+            {% endif %}
+          {% endfor %}
+
+          {% if reviews.has_next %}
+            <a class="btn btn-outline-info mb-4" href="?page={{ reviews.next_page_number }}">Next</a>
+            <a class="btn btn-outline-info mb-4" href="?page={{ reviews.paginator.num_pages }}">Last</a>
+          {% endif %}
+
+        {% endif %}
+    </div>
 {% endblock %}

+ 10 - 1
dashboard/views.py

@@ -69,7 +69,16 @@ class UnRepliedReviewList(View):
         form = ReplyForm()
         date = now - timezone.timedelta(days=30)
         reviews = Review.objects.filter(reply=None, update_time__gte=date).exclude(comment=None).order_by('update_time')
-        return render(request, 'dashboard.html', {'reviews': reviews, 'form': form})
+        page = request.GET.get('page', 1)
+        paginator = Paginator(reviews, 30)
+        try:
+            reviews = paginator.page(page)
+        except PageNotAnInteger:
+            reviews = paginator.page(1)
+        except EmptyPage:
+            reviews = paginator.page(paginator.num_pages)
+        context = {'reviews': reviews, 'form': form}
+        return render(request, 'dashboard.html', context=context)
 
 
 class ReportView(View):

+ 2 - 1
review_automation/settings.py

@@ -137,4 +137,5 @@ CRONJOBS = [
 
 # spaCy model
 
-MODEL = spacy.load('en_core_web_md')
+# MODEL = spacy.load('en_core_web_md')
+MODEL = 'NLP NER MODEL'