00:00
那么再然后就是这个喇叭了。啊,这个喇叭是不是现在咱连这个喇叭都看不见对吧?看不见是因为啥呢?看不见是因为咱当时去做的时候,没有把人家这个喇叭给保留下来,没瞅一眼他这个喇叭它到底是在哪的。看里边有没有啊,没有的话可能就是咱们给他删了。USE3到里边,我们到这里边呢,投眼。在这个middle里边。这应该是最头上的那个。他确实把人家删了,重演,看人家原来的页面。在人家原来的页面里边,我们找一下子怎么样找到谁呢?找到这个U3的樱桃,只要是在用户中心里边咱们就可以找到的。啊,在这里边呢,它在最上边。
01:02
啊,你看。它的最上面,它的这个。这是他top吧,好在他top里边,它这有一个啥呀。他后面比咱们多了这么一个A标签呀。OK,咱们当时是没有把人家这个A标签拿过去啊,我们呢,是给大家放在最后这块,给大家说一下子,这个A标签呢,说的就是那个啥那个喇叭。啊,那个喇叭,所以说我们得把这个喇叭。给你拿过去。三呢,所以说我们得从这里边把这个A标签CTRL加C拿走。拿走的放哪下?放到咱们的大贝斯里边。这样的话,我们的每个页面是不是就都会有这个喇叭了,只要你登录成功,它就会有这个喇叭,OK,我什么呢?我们找一下谁呢,找一下我们的搭配。走到大被子里边,痛。是不是在这儿好,在这儿,然后只要你登录成功。
02:02
这是不是咱们登录成功啊。这这是咱登录成功的。这个玩意儿,然后在登录成功的这里边呢,我们是不是把这个喇叭给它放进去就行了。OK,抽烟它是放在哪的?你看它是放在这个personal它的下边吧,好,咱也给它放这就行了。Personal是不是这个玩意放在它的下边不就完事了吗?好了吗?好,而且它是登录了以后,是不是才会出现这个喇叭,不登录你是不会出现这个喇叭的,OK,那么接下来呢,我们就刷新看一眼。你。好了吗?这个喇叭是不是就有了,OK,那么那么这个喇叭它的出现倒没有多大的问题啊,这次反正他现在只要登录了这块,是不是就会有这个喇叭,对吧?关键的问题是这个喇叭的数量咱如何控制呀。
03:15
数是未读消息的数量,但是你有没有想过,咱上面黑色的这条是不是在每个页面上都用了,在每个页面都用了,难道你每一个页面的view里边都会给我返回这个数字?要不你这个数字怎么显示。怎么在前端页面上,怎么在咱们模板里面去显示。你显示你是不是得通过view给传回来。你在你view里边是不是得找到这个数字,然后通过这个view给传回来,然后你在这边去显示这个数字。是不是?所以这个,所以这个东西它很恶心的。那现在最起码咱咱不得有上十来个页面。啊,除去你的登录注册没有这个黑色这条以外,登录注册重置密码那几几个页面,四五个页面,除了那四五个页面以外,是不是都有这个。
04:10
那都有这个了吧,难道你每一次返回任何的一个页面,都要给他返回一下这个数字。啊。单独弄一个。关键它在不同的页面上。给个链接。因为你初始化是要,因为你初始化就要要这个数字,你说他反这个页面的时候。对不对。你就得带上这个数字了。好,那下面呢,再给大家一种思想啊,这种思想呢,也是一个比较。你倾听技巧就就歪的一个技巧,那我们呢。
05:02
这样的。我看大家能看懂吗?啊来,我找到谁呢。我找到这个。油子这个表。我找到这个表。不。大家想想这个整个这个玩意,它本质上不也就是个类吗?那类里边我是不是可以定义方法呢。我自己可不可以定义方法可以。那么呢?我在这儿是不是可以定义一个get messages?Counter。我是不是可以定这么一个方法?在这个方法里边,同样的这个self不就代表着我整个的这个类的一个对象吗?那这个对象不就是一个用户吗?
06:01
啊,大家想想,你如果想要一次性的把那个喇叭搞定,那么你只有通过一个东西可以找得到,就是你的登录用户。因为你的用户一登录,是不是他在每一个黑色的条里边都是一样的。所以说呢,我就把我的思路就想到哪了,就想到这个用户身上来了。那既然你要玩,那我就在这给你定义这么一个方法,定义这么一个方法以后,那我这块该如何去做呢。因为你用户是不是都是一个啊,所以我在这定义一个方法,我在request里边是不是通过request.user去调它的抽象方法。这样的话,我是不是写一个方法就全完了?对不对,我在这里边去把你的数量给返回去。OK,那么这个我就干嘛,父母的。
07:04
是不是导入我们的op,它的点。摩托车,你们碰他们是谁啊?User messenger。啊,我能不能在一个函数里边倒倒班啊。可以了。可以吧?导的时候肯定学过吧,没有。没学过,你就说下的,这这这这没什么说的,如果说你不想让这个包,让所有外部所有的东西都用,你就可以干嘛。在函数内部导这个包,只有这个函数内部可以用。三呢好,那么能能不能导进来,我进来以后,那么大家想想我这个用户是不是就是现在这个self,我通过这个是不是可以找到这个用户算的钱。好,那么我就来个什么C。这U。我说这个code等于什么呢?我通过这个user message for.object它点further for找谁呢?
08:06
是找到这个用户所有未读的消息,对吧,这个用户是谁在点。对吧,而且我们这里边儿我们的用户。我们的消息表来看。他有一个什么,有一个message me嘛,这里面存的是不是用户的ID啊,所以我让这个message me让等于谁就行了,s.ID不就完事了吗。点二。不行,因为我那不是关系算我那存的是一个ID嘛。你看我这存的是一个影。不是关系字段,如果是关系字段的话,咱直接就映射过去就行了。OK吧,好,那么呢,我在我的这个user model里边是不是可以继续了,那么这个message慢它就等于谁啊S点。
09:00
这是不是就找到这个用户了。对吧,找到这个用户,然后再找谁呀。找它的是等于first找它的位度的嘛。对好,找到未读的,是不是就可以找到这个用户未读的。消息对象啦,然后再点谁呀,看他是不是就拿到他的数量了。当出料以后呢,接着我们在这边是水推一下就行了,可以蹭一下这个counter。好,同学们能看懂吗?OK,我就在这定一个方法。我就干嘛,我就把你所有的黑枣就搞定了。那么你现在要显示这个数量,我找到我的base,我在base里边是不是这个A标签啊,这是它的数量,对吧,我在这直接倒下就快。点user是不是就是你登录那个那个用户啊,它的点get,我们刚才的那个那个那个方法message做不做。
10:08
Cover。我直接掉这个行。好,有了这个操作以后呢,我们就可以去看看咱们的喇叭有没有生效。一。啊,这个限度确实就是零,因为刚才咱们已经不是已经把已做消息不改改过来了吗,所以说我现在退出,我再登录一下不就完事了,再登录。走,你。看好了吗?现在是不是有个1OK。然后我去到哪,我去到我的消息格,进去以后,是不是又多了一个消息,这是不是一个未族的,是不是一族的,未族是不是一个的一个这个就一个闪。然后呢,我在这儿点击它是变成零了。看好了吗?所以说这块咱们的喇叭。
11:04
就算说完了。OK。
我来说两句