00:00
接下来继续完成。个人中心相关的功能。登录注册我们之前已经写过了对吧,然后忘记密码。这个需要在我们有了这个手机或者邮箱之后再去写这个忘记密码,就是找回密码功能就会比较好写,这个我们先跳过,先把个人中心相关的功能给完成。首先创建一个。空气。放到API下面啊,创建一个URL ctrl。我们先写什么,先写用户的个人信息。个人信息啊,来看一下就是。个人信息这个功能,它有两个API,一个是显示用户的个人信息。对吧,一个是。他能提交用户更新后的一些个人信息。
01:06
这里已经创建完成。在控制器里面就有了一个。啊,User controller啊,在这里我们写两个方法。用户的。个人信息。相亲。再来一个方法。啊,不对。User info啊,更新用户的信息。一般其实我们用户会有两张表。一个是。
02:00
啊,一些常用的一些字段,比如说用户登录相关的信息,认证相关的信息放在一个表里面,再一个是用户详细信息,比如说他的这个身份证啊。啊,等等。因为我们这个设计的比较简单,就一个用户表。所以我们直接把这一个用户表的用户的详情给返回就可以了啊。先继承一下贝。Controller。用户信息。是不是可以直接从登录的这个,呃,当前登录用户里面去获取。对不对,他访问我们这个用户信息肯定需要登录的,也是需要带着talking过来,我们从talking里面是可以解析出来用户信息的。哎,所以这个直接返回就可以return。Response啊,返回一条信息的话,使用item。哎,接着是。用户的模型实力啊,从这个also里面。可以直接获取到用户的模型实例。
03:03
有闪。是这样的吧,然后使用右侧的全次方。格式化我们的返回,好,这样就完成了用户的详情。啊,更新我们等会儿来说先测试一下详情。找到路由文件去写。路由。A片里面。用户的。这个详情啊,他需要登录才能看吗?个人中心我先写一个分组个人中心。然后是用户详情啊,Get方法就可以了。直接请求user。使用。User controller。啊,注意是不是adin的,是这个API的,不要选错了。Class里面的有色音色方法。
04:03
来,我们来测试一下。这个需要登录,我们先请求一下登录。看看账号对不对。啊,是对的啊。得到一个talking。然后来请求用户的列表,Get方法API点。Test API前缀,然后是优色。带上talking。是不是拿到数据了。你会发现,嗯,这个数据呢,它带了一个data这个层。对不对,我们后台是使用了一些中间件,把这个data层给去掉了。啊,并且。呃,还支持路由的模型绑定。所以我们去改一下这个路由啊,我们改一下它使用的一些中间键。
05:01
参考一下后台这个。哎,我们是不是把所用到的一些中间的一些参数给放到上面,然后这里用变量,要不然这里写太长了。好,我们直接复制它去放到前台,前台的这个API这里改一下,把这里换成这个参数,这样我们就不用写太长的这个数组。啊,这样这个就是可以减少它的这个包裹层,就是帮我们移除这个data。啊,它的作用呢就可以啊,支持路由的一个模型的一个注入,当然我们前台很多API是需要这个模型注入的。哎,这个是API的请求的一个频率的一个限制。再抢一下试试。是不是就没了data保护层啊,但是还有问题,我们这个is log它是now。Not的话,说明以前我们写transform的时候,这个字段取错了。现在调整过来,就发现错误及时改正。找到use transform。啊,这里啊,没有这个属性,应该是这个属性啊。
06:03
再来看一下。这样数据就正常了是吧。好,这样用户详情就写完了。来,接着写下更新。先定一下路由啊。这个关掉啊。在这面去写。更新。用户信息啊。一般要更新用户信息,我们同时提交的字段有很多,所以一般使用铺的方式,嗯,因为我们比较简单,所以字段比较少。还是有。这个UI一样没问题啊,因为我们在请求的这个行为方式不一样。直接复制它。暂停一下。方法是update。
07:02
有。啊,是这样的啊,一样的啊。嗯,接着去在这里面写。写request来接收提交的一个数据对不对?啊,用户不用让模型给路,路由模型给注注入进来啊,直接是当前登录的用户就可以。看user是不是等于。Also API选择这个首位。六三这样是不是可以获取到用用户的这个模型实力是不是。啊,然后我们要更新它什么属性,用它的这个update的方法就可以了啊。当然我们来看一看,我们用其实现在能更新的内容很少啊。也就更新个。Name了。是不是因为我们不管是更新密码还是说绑定邮箱,都有单独的功能去写。
08:05
啊,都是单独的功能去写。你看不管是绑定邮箱啊,绑定手机啊,或者是修改密码,都有单独的功能,所以说啊,这里我们能修改的只有内了。好,我们就只修改内幕吧。我们只要把思路理解就可以,你再多几个字段,无非是多修改几个字段而已,User name。等于request input,就是说表单提交过来的name啊。啊,最后进行。C5就可以了啊。就保存了,然后返回一个。响应。No content啊好,既然从表单输入里面获取这个name了,所以要做一下表单验证对不对,不能让你随便填。这个验证规则就找我们注册时候的那个规则,对吧,你注册的时候,你这个内幕怎么限制的,那你修改肯定也得做同样的一个限制。
09:07
是不是?啊,找到这个request表单验证also里面看注册这里。然后我的name是不是就是不能超过16位,然后必填。哎,这里因为就一个字段,我们就不去创建。表单验证的这个类了,就直接使用request里面的表单验证。啊,这样就可以了啊。来测试一下啊。还是这个地址啊。但是使用库的方式提交。是不是告诉我们名称不能为空?啊,我们要在包的里面啊,传上这个name。我们现在是so是吧,我把它修改成me。是不是修改成功了204。
10:02
看一下数据库。确实修改成了对吧。好,这样修改用户信息,我们也写完了。表比较简单,所以就一个字段,如果字段多的话,你就多加一些验证,然后去进行修改就可以,但是如果验证的这个字段比较多的话,你可以把它写成单独的一个验证的。呃,类放到这个request里面创建的时候,它就会自动公放里面啊,把我们验证规则写到单独的验证的类里面,字段比较少一两个的话,直接使用request验证就可以了。用户。个人信息完成。
我来说两句