Maison > Questions et réponses > le corps du texte
J'ai une table qui est une table de classification d'arbre, et up_id correspond à l'identifiant de classification de niveau supérieur. Je veux juste convertir up_id en nom de la classification de niveau supérieur lors de son affichage dans le tableau. faire? Je pense que cela peut être implémenté en utilisant le getter du modèle, mais je ne sais pas comment l'utiliser
La méthode du contrôleur des données de table est comme ça
//返回分类列表数据 if(Request::isAjax()) { $list = ModelTree::order(['up_id','sort','id']) ->paginate($this->request->get('limit', 20)); $data = [ 'code' => 0, 'msg' => '正在请求中...', 'count' =>$list->count(), 'data' => $list->items() ]; return Json::create($data); }
清风2020-02-08 13:02:26
Le problème est résolu, haha
Comment écrire le modèle getter
//上级分类名称获取器 public function getUpNameAttr($value,$data) { $list = Tree::field(['name'])->where('id','=',$data['up_id'])->find(); if($list) { return $list['name']; }else{ return '顶级分类'; } }
Comment écrire le contrôleur
//返回分类列表数据 if(Request::isAjax()) { $list = ModelTree::order(['up_id','sort','id']) ->paginate($this->request->get('limit', 20)); foreach ($list as $item) { $item->append(['up_name']); $item['up_name'] = $item->up_name; } $data = [ 'code' => 0, 'msg' => '正在请求中...', 'count' =>$list->count(), 'data' => $list->items() ]; return Json::create($data); }
Afficher les résultats