所以我目前在views.py
中有这个功能def live_unread_notification_count(request):
unread_notifications = Notification.objects.all_for_user(request.user).unread().count()
data = {
"unread_notifications": unread_notifications,
}
json_data = json.dumps(data)
return HttpResponse(json_data, content_type='application/json')
print data
我有我的网址
url(r'^notifications/unread_count/$', 'live_unread_notification_count', name='live_unread_notification_count'),
当我到达网址时,我得到了正确的通知数量,例如
{"unread_notifications": 2}
当此人刷新页面时,如何在html模板中的导航栏上显示此内容?
我需要一些JavaScript吗?
请帮忙。
答案 0 :(得分:1)
我将使用jQuery来演示。
首先,在元素中添加id
,以显示通知计数。
例如:
<span id="notifCount"></span>
现在,让我们来看看JS部分:
<!-- Put this code before the body tag ends -->
<!-- Load jQuery -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<!-- JS code to fetch notif count -->
<script>
$(document).ready(function() {
$.ajax({
url: '{% url "live_unread_notification_count" %}',
method: 'GET',
success: function(data) {
// assign the count to a variable
var unreadNotifs = data['unread_notifications'];
// put the count in the notifCount element
$('#notifCount').html(unreadNotifs);
}
});
});
</script>
这个anwer为您提供了开始使用JS,jQuery和AJAX的起点。 阅读这些主题。有几天你应该好好去。