fastadmin,如何配置多级栏目下拉

首先,我们在common模块中的ArticleCategory模型中,写一个查询所有栏目的方法.
项目\application\common\model\ArticleCategory.php

/**
     * 返回文章栏目列表
     * @return array|false|\PDOStatement|string|\think\Collection
     */
    public function getArticleCategoryLists()
    {
        $result=[];
        $list=$this->where(["status"=>1])->order("id","asc")->field(["id","pid","name"])->select();
        $result=$list;

        return $result;
    }
随后,在后台控制器的初始化函数中,把这个数据,给拼装一下,项目\application\admin\controller\Articles.php
   public function _initialize()
 {
     parent::_initialize();
     $this->model = new \app\common\model\Articles;

     $ArticleCategory=new ArticleCategory();
     $articleCategoryLists = $ArticleCategory->getArticleCategoryLists();
 	//这里调用了fastadmin自带的用了Tree方法,把一个二维数组,拼接成(id=>名称)的一维数组,这样在前端通过控件,直接调用.
     Tree::instance()->init($articleCategoryLists);
     $result = Tree::instance()->getTreeList(Tree::instance()->getTreeArray(0));
     $categoryLists=[];
     foreach ($result as $k => $v) {
         $categoryLists[$v['id']] = $v['name'];
     }
     $this->view->assign('categoryLists', $categoryLists);
 }

新增:
{:build_select('row[pid]', $categoryLists, 0, ['class'=>'form-control selectpicker', 'data-rule'=>'required'])}
修改:
{:build_select('row[pid]', $categoryLists, $row['pid'], ['class'=>'form-control selectpicker', 'data-rule'=>'required'])}

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值