В настоящее время у меня есть представление, которое я отображаю в шаблоне и возвращаю ему два списка запросов. Мой вид, как показано ниже
def view_notifications(request,user_id):
context_instance=RequestContext(request)
user = User.objects.get(pk=user_id)
user.profile.notifications = 0
user.profile.save()
notices = list(notifications.objects.filter(n_reciever=user.id, is_read=0).order_by('-time'))
number = notifications.objects.filter(n_reciever=user.id, is_read=0).order_by('-time').count()
if number < 5:
old_notices = list(notifications.objects.filter(n_reciever=user.id, is_read=1).order_by('-time')[:5])
else:
old_notices = False
notifications.objects.all().update(is_read = 1)
return render_to_response('profiles/notifications.html', {'New_Notice': notices, 'Old_Notices':old_notices, 'number': number,},context_instance=RequestContext(request))
В моем шаблоне я перебираю два списка и задаю цвет фона для объектов списка, новых как
<ul id="notification_list">
<li id="first"></li>
{% for notice in New_Notice %}
<li class="new"> <a href="{{notice.n_sender.profile.get_absolute_url}}">{{ notice.n_sender.profile.url_name}} </a> {{notice.message}} your <a href="{{notice.object_url}}"> {{notice.object_type}}</a></li>
{% endfor %}
{% for notice in Old_Notices %}
<li> <a href="{{notice.n_sender.profile.get_absolute_url}}">{{ notice.n_sender.profile.url_name}} </a> {{notice.message}} your <a href="{{notice.object_url}}"> {{notice.object_type}}<a/></li>
{% endfor %}
</ul>
Теперь я хочу сделать то же самое с помощью вызова AJAX
и отобразить эти объекты в раскрывающемся списке, а не на новой странице, чтобы пользователь мог сам просматривать уведомления, не выходя из системы. Я не могу понять, как я могу отправить два JSON в кодировке object_lists
. Я знаю, как сериализовать список объектов в JSON
data = serializers.serialize('json', notifications.objects.all())
Но можно ли таким образом отправить два списка объектов? Также я не знаю, как отобразить этот список закодированных объектов JSON в HTML. Могу ли я получить к нему доступ так же, как к объектам в шаблоне?
Пожалуйста, помогите