私は、ユーザーが互いにメッセージを送信できる Facebook のようなメッセージング システムを実装したプロジェクトに取り組んでいます。特定のスレッドの未読メッセージの数もメッセージ ページに表示されます。
今私が欲しいのは、ユーザーがログインするたびに、ナビゲーションバー(base.html にあります) に未読メッセージの数を表示することです。ユーザーがログインするたびにこれを行うにはどうすればよいですか?
提案してください。この目的のために他のアプリを使用したくありません。ありがとう
私は、ユーザーが互いにメッセージを送信できる Facebook のようなメッセージング システムを実装したプロジェクトに取り組んでいます。特定のスレッドの未読メッセージの数もメッセージ ページに表示されます。
今私が欲しいのは、ユーザーがログインするたびに、ナビゲーションバー(base.html にあります) に未読メッセージの数を表示することです。ユーザーがログインするたびにこれを行うにはどうすればよいですか?
提案してください。この目的のために他のアプリを使用したくありません。ありがとう
これを行うことができる簡単なタグを書くことができます。
def unread_messages(user):
return user.messages_set.filter(read=False).count()
#replace the messages_set with the appropriate related_name, and also the filter field. (I am assuming it to be "read")
register.simple_tag(unread_messages)
そして基本テンプレートでは:
{% load <yourtemplatetagname> %}
{% if request.user.is_authenticated %}
{{ request.user|unread_messages }}
{% endif %}