00:00
进行邮箱发送的实战。我现在登录的用户是A,我们去看B的这个文章。然后我们去评论,评论之后呢。啊,要通知一下这个B这个用户,就是说你的哪个文章有新的回复。首先。要去更改一下数据库。把用户B的邮箱。啊,给改了。改成什么呢?改成。就是我们这里能接收邮件的这个邮箱啊,改成这里这个邮箱。要不然没法测试。改成这个邮箱。这样的话,我们就是说给这个B的这个文章评论完之后就会。啊,通过啊B这个用户里面的这个邮箱去获取地址,然后通过我们的邮件发送。给B这个用户去发送一个通知,就是告诉他你的这个哪篇博客有新的一个评论啊,评论的内容是什么。
01:07
对吧,首先。要发送邮件,先去创建我们邮件发送的一个类。就是用这个啊,把名字改一改。Blog。Comment。创建完成之后。啊,这里会。多了一个这一类啊,这个练习的我们就删掉。在这个里面去写我们发送的一个内容。呃,如果要。发送这个邮件啊,给作者去通知他你的哪个博客有什么评论的内容,所以这里我们需要接收两个参数对不对,一个是。啊,这个评论。啊,接受一个评论就可以了。这里定义一个属性。因为通过评论和博客的关系,我们可以去通过这个模型的一个关联去拿到博客,我们不用再多传一个博客进来,只要传一个评论就可以。
02:17
Command,等于我们传过来的这个command。好,接下来去返回我们博客的一个视图,邮件的一个视图。email.blog。啊,你去创建这个啊文件。找一下。好,这里啊,新建一个。点的。一定要是类的模板啊。练习的这个就删掉了。来简单写一下我们的内容啊。
03:02
写一个H2啊,你有新的。通知。在下面写我们的内容,内容就放到H3里面吧。您的博客?哎,这里写。他博客的一个名字啊,比如说XX。有新的评论冒号。接下来把评论的内容给写一写啊,评论的内容就放到div里面。好,这里就放评论的一个内容。嗯,或者说我们还可以把这个姓名给加上,比如说谁谁对您的博客进行的评论都是可以的,是吧?好,我们把这给加上。对啊,您的博客。进行了评论。
04:02
这个改成您有。新的评论。大概这是一个评论的一个内容,我们的模板简单的就这样去写,接下来看看我们都需要什么数据。首先需要是。啊,这个评论的这个人对吧,还有就是评论的那个博客,以及评论的一个内容,这些数据都可以从我们的这个评论模型里面去获取。对不对,评论有关联的用户有有关联的这个博客是不是都可以获取到好。接下来。找到啊评论的这个控制器是在。Controller comment,这里面啊,这里面我们评论之后。啊,评论之后再返回之前。发送邮件。通知作者有新的评论。
05:01
在这里去写啊,怎么发邮件呢,使用mail的这个门面。提供了to方法啊,To里面是给谁发,然后使用send,使用哪个邮件发送的,当然是使用。这个blog comment啊,这个邮件发送类。这个啊。传入。就是评论的一个内容。对吧。评论的内容就是。啊,这个。Res是不是,我们打一下看res是不是它返回的一个评论的一个模型对象。先评论一下看看啊。找到network。在这里面进行评论。好,看一看打印的内容。啊,是这个评论的对象啊,也就是因为我们这里使用的是模型关联的comments这个方法进行可创建的,对吧?啊,他给我们返回的这个结果就是我们评论的这个对象,所以把变量改一改,为了我们好去区分。
06:08
Comment comment。这里都用comment。好。刚才我们打印这个,呃,添加成功之后的一个结果嘛,这个结果就是这个评论的这个对象嘛。看一下是不是。啊,还有内容,还有博客的ID,还有用户ID是对的啊,所以我们只需要把这个添加之后的一个结果啊,这个comment模型对象。传给这个。这个。通知的这个邮件类就可以,你看这里面。啊,构造函数。就会接收到这个评论。然后给到这个属性,那接到这个属性之后,我们是要把这个属性。啊,给传给这个视图去使用。对吧。我们可以传一个command。接下来可能有人有疑问了,那你这个博客呀,还有这个用户啊,你怎么处理呢。
07:04
对不对,我们在这个视图里面是不是也可以去使用模型的关联。比如我们要取得这个评论的用户是不是可以啊,从这个comment里面去获取用户的一个关联,然后再获取用户的一个内幕,对吧,同样的博客。也是一样的啊,比如。从。这个command模型对象里面去获取它关联的这个博客,然后博客的标题是吧。包括这个评论的一个内容,评论的内容直接就使用这个评论里面的这个content就可以了。是这样的吗?好。这样就可以了,接下来还有什么没处理呢?就是我们要发送给谁,发送给谁,是发送给。啊,这篇文章的这个作者,也就是。这个blog啊,这个blog的这个作者。
08:00
知道吧。直接写user就可以啊。就是传发送给博客的这个用户就可以,他会自己去这个。啊邮箱啊,用户这个表里面去找这个用户的一个邮箱。会去找这个对象。这是我们在刚才看手册的时候,就之前学邮件发送的时候,看手册的时候。这个to它支持什么呢?你写啥?兔啊,里面可以传。用户模型啊。这里我们就是传统用户的一个模型的对象。可以传用户模型,嗯,邮箱地址。邮箱地址啊,数组。数组里面的这个。数组里面写多个邮箱地址。或者是用户模型。啊,这个放。
09:00
这里曲线它不仅支持单个的用户模型,还支持用户模型的一个集合,用户模型集合就是可以给多个人去发送,当然我们这里只是通知这个作者,只给一个人发就可以了。对吧。现在我们来进行测试。啊,刷下页面,把这个给关掉。评论一个写的不错。评论。好,评论成功,接下来去刷新一下邮件,看有没有这个新的一个邮件。没有收到邮件啊,这是为什么呢?是因为这里用户我们改了这个邮箱,并没有提交到数据库,也数据库没有更新,这里我们把数据库更新一下才行,你现在刷新一下这个邮箱才是对的,好,再次进行尝试。看能不能。发送成功就是用利用用户模型去发送。接着进行评论。继续努力。
10:03
什么?评论成功,接下来去刷新一下邮箱。是不是收到这个评论了?可以看到我们写的这个内容,嗯,谁对我们的这个博客什么什么进行了评论,评论的内容都有了,对吧。
我来说两句