10-11 我的消息


经典的地方

C:\Users\hlg\PycharmProjects\MxOnline\apps\users\models.py

    def unread_nums(self):
        #   获取用户未读消息的数量
        from operation.models import UserMessage
        return UserMessage.objects.filter(user=self.id).count()

调用

                            <a href="usercenter-message.html">
                                <div class="msg-num"><span id="MsgNum">{{ request.user.unread_nums }}</span></div>
                            </a>


class MyMessageView(LoginRequiredMixin, View):
    """
    我的消息
    """
    def get(self, request):
        # all_messages = UserMessage.objects.all()
        all_messages = UserMessage.objects.filter(user=request.user.id)
        # 对我的消息进行分页
        try:
            page = request.GET.get('page', 1)
        except PageNotAnInteger:
            page = 1
        # 一定要3个参数,不然报错
        p = Paginator(all_messages, 5, request=request)

        messages = p.page(page)
        return render(request, 'usercenter-message.html',{
            "messages":messages
        })

C:\Users\hlg\PycharmProjects\MxOnline\templates\usercenter-message.html

{% extends 'usercenter-base.html' %}
{% block title %}我的消息- 慕学在线网{% endblock %}
{% load staticfiles %}
{% block custom_bread %}
    <section>
        <div class="wp">
            <ul  class="crumbs">
                <li><a href="{% url 'index' %}">首页</a>></li>
                <li><a href="/user/home/">个人中心</a>></li>
                <li>我的消息</li>
            </ul>
        </div>
    </section>
{% endblock %}

{% block right_content %}
    <div class="right" >
		<div class="personal_des Releasecont">
			<div class="head">
				<h1>我的消息</h1>
			</div>

		</div>
		<div class="personal_des permessage">
			<div class="head">
				<ul class="tab_header messagehead">
					<li class="active"><a href="/user/message/">个人消息</a> </li>
				</ul>


			</div>
			<div class="messagelist">
                    {% for message in messages.object_list %}
                        <div class="messages">
                            <div class="fr">
                                <div class="top"><span class="fl time">{{ message.add_time }}</span><span class="fr btn foldbtn"></span></div>
                                <p>
                                    {{ message.message }}
                                </p>
                            </div>
                        </div>
                    {% endfor %}


			</div>


			<div class="pageturn pagerright">
                <ul class="pagelist">
                {% if messages.has_previous %}
                    <li class="long"><a href="?{{ messages.previous_page_number.querystring }}">上一页</a></li>
                {% endif %}

                {% for page in messages.pages %}
                    {% if page %}
                        {% ifequal page messages.number %}
                            <li class="active"><a href="?{{ page.querystring }}">{{ page }}</a></li>
                        {% else %}
                            <li><a href="?{{ page.querystring }}" class="page">{{ page }}</a></li>
                        {% endifequal %}
                        {% else %}
                           <li class="none"><a href="">...</a> </li>
                        {% endif %}
                {% endfor %}

                {% if messages.has_next %}
                    <li class="long"><a href="?{{ messages.next_page_number.querystring }}">下一页</a></li>
                {% endif %}

            </ul>
            </div>
		</div>

	</div>
{% endblock %}




效果图:





























猜你喜欢

转载自blog.csdn.net/huanglianggu/article/details/80850014