微信小程序商城全栈开发 作业笔记 (十四)Banner表的完成 (下)

微信小程序商城全栈开发 作业笔记 (十四)Banner表的完成 (下)

1.读取器的应用

读取图片的相对路径
在image.php模型中,创建

public function getUrlAttr($value)  URL的相对路径 数值 断点走五次就完了
              固定 字段名 固定  

在这里插入图片描述
在这里插入图片描述
删除原来控制器的config文件

对于来自网络和本地的图片进行判断读取

由于from是另一个字段,不是value的url字段,所以用data来读取
在这里插入图片描述
结果和原来一样
在这里插入图片描述
触发读取器,TP5默认
在这里插入图片描述

2.自定义模型基类

面对其他模型下有相同的URL字段,读取器就无法生效了

新建一个模型基类,继承与Model,放在基类处理
在这里插入图片描述
又成功的返回了
在这里插入图片描述
(注意:相同的URL还是会被读取)
改进:将读取器改为一个普通的函数
在这里插入图片描述
然后在子类里重新定义
在这里插入图片描述
验证一下,好吧,又是它
在这里插入图片描述
说明:不让所以的子类模型自动继承BaseModel下的读取器,而是当模型下的字段有需要自动拼合URL时,就在子类下重新定义它的读取器,并且在读取器内部调用方法,其他子类也继承于BaseModel

3.定义API的版本号

直白法

比如在 v1\Banner里,直接在getBanner加入($id,$version)然后
if($version==1
if($version==2

模块法

在cotroller中添加v2,再写一个Banner,v2\Banner
在这里插入图片描述
还需要在router.php里动态传入
在这里插入图片描述
测试一下
在这里插入图片描述
好了,我们的Banner接口完成了

猜你喜欢

转载自blog.csdn.net/qq_43204040/article/details/86630704
今日推荐