DUXCMS3.0 瞎改记录

admin8年前随笔820
3.0的DUX完善了自定义模型和筛选模型,负载能力也比2.0有很大提升 so刚出测试版就搭建了一个站点用以测试 在使用中发现了一些细节的问题 1、列表顺序 比方说列表页排列顺序和点击筛选后顺序是正序的,这个需要修改
 /app/article/controller/IndexController.php
$classIds = target('article/ArticleClass')->getSubClassId($classId);
        $where['_sql'] = 'B.class_id in (' . $classIds . ') ORDER BY B.content_id desc';
        $attrList = [];
        if($classInfo['filter_id']) {
            $filter = target('site/SiteFilter')->getFilter('article/ArticleClass', $classIds, ['id' => $classId]);
            if ($filter['status']) {
                $where['_sql'] = 'A.content_id in (' . $filter['ids'] . ') ORDER BY B.content_id desc';
            }
            $attrList = $filter['attrList'];
        }
大约36,42行的位置加入ORDER BY B.content_id desc,可以在不影响响应速度的前提下把顺序改为倒序。 2、内页响应时间
/*
        target('site/SiteContent')->where(['content_id' => $info['content_id']])->setInc('view');
        $where = [];
        $where['A.status'] = 1;
        $where['_sql'] = 'A.create_time < ' . $info['create_time'];
        $where['B.class_id'] = $info['class_id'];
        $nextInfo = target('article/Article')->loadList($where, 1);
        $where = [];
        $where['A.status'] = 1;
        $where['_sql'] = 'A.create_time > ' . $info['create_time'];
        $where['B.class_id'] = $info['class_id'];
        $prevInfo = target('article/Article')->loadList($where, 1);*////这里注释用以减少sql查询
/app/article/controller/InfoController.php 注释掉大约62-75行之间的代码,可以极大的提升内页响应时间,3W数据内页响应时间从2S缩短到0.02S
aaaaaaaa

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。