fastadmin后台中文章分类ID改为名称显示

1、fastadmin 为我们提供了分类功能。个人感觉官方的分类功能很强大也满足日常大部分需求。
官方分类功能
但是出现一个问题就是列表显示的分类ID
在这里插入图片描述
这里很不习惯也不符合需求
所以我们得来改~~~~
首先找到你当前的文章类后台控制器
一般在application/admin/controller 下面

//引入关联模型 注意这里是你的当前控制器对应的模型人,如果是默认官方分类直接用下面这句即可。
use app\common\model\Category as CategoryModel;
//在当前控制器中增加index方法,默认是没有的因为继承了后台基类
 //查看
  public function index()
    {
        //设置过滤方法
        $this->request->filter(['strip_tags']);
        if ($this->request->isAjax())
        {

            //如果发送的来源是Selectpage,则转发到Selectpage
            if ($this->request->request('keyField'))
            {
                return $this->selectpage();
            }

            $typeName = CategoryModel::where('type', 'eq', 'women_news')//这里需要需要你的分类名称。得修改成自己的
                ->column('id,name');

            list($where, $sort, $order, $offset, $limit) = $this->buildparams();
            $total = $this->model
                ->where($where)
                ->order($sort, $order)
                ->count();

            $list = $this->model
                ->where($where)
                ->order($sort, $order)
                ->limit($offset, $limit)
                ->select();

            $list = collection($list)->toArray();

            foreach ($list as $k => &$v)
            {
                $v['type_text'] = isset($typeName[$v['category_id']]) ? $typeName[$v['category_id']] : "";
        
            }
            unset($v);
            $result = array("total" => $total, "rows" => $list);

            return json($result);
        }
        return $this->view->fetch();
    }

修改前台js:后台对应的js 一般在 public/assets/js/backend 目录下跟控制器同名
把:

{field: 'unit', title: __('category_id')},
改为:
{field: 'type_text', title: __('category_id'),operate:false,formatter: Table.api.formatter.label},

修改后 清空缓存:
在这里插入图片描述

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果在FastAdmin框架,原表的字段已经是关联的其他表的ID号,而你想要再次关联该字段以显示名称,你可以使用模型关联的功能来实现。 以下是一些步骤来实现在FastAdmin框架重新关联字段并显示名称: 1. 确保你已经按照FastAdmin框架的要求搭建好项目,并且已经创建了相关的模型和数据表。 2. 在原模型对应的模型文件,使用`belongsTo`或`hasOne`方法来定义与另一个表的关联关系。例如,如果你的原表模型为`Gongcheng`,关联的表模型为`GongchengName`,则可以在`Gongcheng`模型文件添加以下方法: ```php public function gongchengName() { return $this->belongsTo('GongchengName', 'gongcheng_name_id', 'id'); } ``` 这样就定义了一个与`GongchengName`模型的关联关系。 3. 在需要显示名称的地方,可以通过访问关联模型的属性来获取名称。例如,假设你在控制器的某个方法获取了`Gongcheng`模型的实例,你可以通过以下代码来获取关联表的名称: ```php $gongcheng = Gongcheng::find($id); $name = $gongcheng->gongchengName->name; ``` 这样,`$name`变量将包含关联表的名称。 通过以上步骤,你可以在FastAdmin框架重新关联原表字段,并将其显示名称。请注意,具体的模型和表名称可能因你的应用程序而有所不同,以上示例仅供参考。你需要根据自己的实际情况进行相应的修改和调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值