• hdwiki中model模块的应用


     control中调用model
    原则是这样的,如果你的这个model在本control中大部分方法中都要用到,那么,就写在构造函数里面。
    例如,名字为doc的control的构造函数如下:

          function control(& $get,& $post){
            $this->base( & $get,& $post);
            $this->load("doc");
            $this->load("category");
        }

    这里加粗的两个model,一个是doc,一个是category,都是本control每个方法差不多都要用到的,所以写到构造函数里面。如果不是这种情况,那么需要的时候再去load。例如:下面是浏览词条的时候,需要调用model名字为adv的。就是在使用前load的,并没有放到control的构造函数里面
        function doview() {
              ......
            $this->load('adv');
              ......
       }

    model中调用model,例如在名为adv的model中,有如下方法:
        function view_filter($position){
           ......
            $this->base->load('category');
           ......
          }
    这里加粗的就是关键的代码,因为每个model都有个属性base,这个就可以去load你想要的model了,使用起来也很简单。

    使用HDwiki缓存
        base类有个cache的属性,看如下代码:
        function dodefault() {              
            $indexcache=$this->cache->getcache('indexcache',$this->setting['index_cache_time']);
            if(!(bool)$indexcache){
                $indexcache=...
                $this->cache->writecache('indexcache',$indexcache);
            }
      }
    要使用缓存,首先要给缓存取一个唯一的名字,这里例子中的缓存的名字就是“indexcache”,还要给你的缓存定一个过期时间,在getcache方法的第2个参数里面,如果为0,表示不过期,除非你删除。注意,缓存的时间单位为秒。

  • 相关阅读:
    Python IDE
    Codeforces Beta Round #69 Div1
    HDU1595 find the longest of the shortest[最短路]
    MFC/OpenGL下的调色板
    ApacheCN 编程/大数据/数据科学/人工智能学习资源 2019.12
    计算机电子书 2016 BiliDrive 备份
    计算机电子书 2017 BiliDrive 备份
    Java项目中常见的异常处理
    从小工到专家第三次读后感
    《梦断代码》读后感1
  • 原文地址:https://www.cnblogs.com/camelroyu/p/5645832.html
Copyright © 2020-2023  润新知