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,表示不过期,除非你删除。注意,缓存的时间单位为秒。
hdwiki中model模块的应用的更多相关文章
- Django之model模块创建表完整过程
Django中,与数据库相关的模块是model模块,它提供了一种简单易操作的API方式与数据库交互,它是通过ORM映射的方式来操作数据库,一个类对应数据库一张表,一个类属性,对应该表的一个字段,一个实 ...
- tensorflow中slim模块api介绍
tensorflow中slim模块api介绍 翻译 2017年08月29日 20:13:35 http://blog.csdn.net/guvcolie/article/details/77686 ...
- 人脸识别引擎SeetaFaceEngine中Identification模块使用的测试代码
人脸识别引擎SeetaFaceEngine中Identification模块用于比较两幅人脸图像的相似度,以下是测试代码: int test_recognize() { const std::stri ...
- 人脸识别引擎SeetaFaceEngine中Alignment模块使用的测试代码
人脸识别引擎SeetaFaceEngine中Alignment模块用于检测人脸关键点,包括5个点,两个眼的中心.鼻尖.两个嘴角,以下是测试代码: int test_alignment() { std: ...
- 人脸识别引擎SeetaFaceEngine中Detection模块使用的测试代码
人脸识别引擎SeetaFaceEngine中Detection模块用于人脸检测,以下是测试代码: int test_detection() { std::vector<std::string&g ...
- Backbone事件机制核心源码(仅包含Events、Model模块)
一.应用场景 为了改善酷版139邮箱的代码结构,引入backbone的事件机制,按照MVC的分层思想搭建酷版云邮局的代码框架.力求在保持酷版轻量级的基础上提高代码的可维护性. 二.遗留问题 1.b ...
- 隐藏进程中的模块绕过IceSword的检测
标 题: [原创] 隐藏进程中的模块绕过IceSword的检测 作 者: xPLK 时 间: 2008-06-19,17:59:11 链 接: http://bbs.pediy.com/showthr ...
- 浅析JS中的模块规范(CommonJS,AMD,CMD)////////////////////////zzzzzz
浅析JS中的模块规范(CommonJS,AMD,CMD) 如果你听过js模块化这个东西,那么你就应该听过或CommonJS或AMD甚至是CMD这些规范咯,我也听过,但之前也真的是听听而已. ...
- springMVC 返回类型选择 以及 SpringMVC中model,modelMap.request,session取值顺序
springMVC 返回类型选择 以及 SpringMVC中model,modelMap.request,session取值顺序 http://www.360doc.com/content/14/03 ...
随机推荐
- iOS 顺传
ios 顺传一层的话,直接用属性 改变里面的值 顺传穿两到三层的话 使用KVO // 设置item - (void)setItem:(UITabBarItem *)item { _item = ite ...
- Swift实战-豆瓣电台(九)简单手势控制暂停播放(全文完)
Swift实战-豆瓣电台(九)简单手势控制暂停播放 全屏清晰观看地址:http://www.tudou.com/programs/view/tANnovvxR8U/ 这节我们主要讲UITapGestu ...
- 当As3遇见Swift(三)
类 As3 Swift中似乎没有包,包路径的概念.因而显得简洁的多. package { public class ShuaiGe { } } Swift类 class ShuaiGe{ } 类的构造 ...
- @Transactional
转载请标明出处:http://blog.csdn.net/cuker919/archive/2010/10/21/5957209.aspx Spring事务的传播行为 在service类前加上@Tra ...
- (转)json+flexgrid+jbox组合运用页面刷新<jsp>
插件效果 1.JSP页面 1 <%@ page language="java" contentType="text/html; charset=UTF-8" ...
- 转:python webdriver API 之简单对象的定位
对象(元素)的定位和操作是自动化测试的核心部分,其中操作又是建立在定位的基础上的,因此元素定位就显得非常重要. (本书中用到的对象与元素同为一个事物)一个对象就像是一个人,他会有各种的特征(属性) , ...
- websotrm注册码
webStorm : UserName:William ===== LICENSE BEGIN ===== 45550-12042010 00001SzFN0n1bPII7FnAxnt0DDOPJA ...
- UML: 对象图
摘自http://www.umlonline.org/school/thread-33-1-1.html Line表示类,line为Line的对象,下划线表明为对象,一般对象图用不到. 除了静态方法, ...
- struts一些实用常量配置_2015.01.04
- Android 仿土巴兔选择效果
1,前两天在群里看到有人在讨论土巴兔的选择装修风格的效果,自己也想实现,果断百度一下,有些好的文章,就花了些时间来分析了下,先看看别人土巴兔原装的功能 2,可以看到,基本上可以使用一个vviewpag ...