记录一次在列表里显示关联表对应的名称的过程

本文介绍了一种将ThinkPHP框架中展示的杂志分类ID替换为实际分类名称的方法。通过使用数据库查询和数组操作,实现了从数据库中获取分类名称并将其应用于列表显示的过程。此外,还展示了如何处理图片路径和数组格式化。

之前在列表里显示的是id。如图:杂志分类这里之前显示的是id,需要修改成显示杂志分类关联表的cat_name字段的值。
在这里插入图片描述
在返回的数组里加上:

 $list[$k]['classify_id']  = Db::name('category')->where('id',$v['classify_id'])->value('cate_name');

代表的意思:

thinkphp获取数据库中某一列数据的某个字段的值使用value()方法。where是查询条件。

这么写有点初级,最好是在model里取数。

后台和接口都有相同的数据返回,定义了一个common来共用。

use addons\magazine\common\controller\Magazine

  public function ShowData($param,$where){
        $param['page'] =  $param['page'] ?? '1';
        $param['limit']  =$param['limit'] ?? '10000000';
        $list = \addons\magazine\model\Magazine::page($param['page'])->limit($param['limit'])->where($where)->select();

        $status = [1=>'发布',2=>'上线',3=>'草稿',4=>'下线'];
        foreach ($list as $k=>$v){
             $list[$k]['status']  = $status[$v['status']];
             
              $list[$k]['classify_id']  = Db::name('category')->where('id',$v['classify_id'])->value('cate_name');
             
            $list[$k]['cover_image']  = 'http://'.$_SERVER['HTTP_HOST'].$v['cover_image'];
             $image= explode(',',$v['impurities_image']);
            foreach ($image as $key=>$value){
                $image[$key] ='http://'.$_SERVER['HTTP_HOST'].$value;
                $list[$k]['impurities_image'] = $image;

            }
        }

        return  ['list'=>$list,'total'=> \addons\magazine\model\Magazine::count()];
    }
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值