DedeCMS V5.7模块MVC框架基本说明
目录结构说明:
|_app
|___control 控制器(C)
|___model 模型(M)
|___templates 视图模板(V)
|___libraries 类库
|___data 配置
|___data\helper 小助手
|___static 样式,js,图片文件夹
|___index.php 统一入口文件
统一入口解析地址
http://你的网址/app/index.php?ct=index&ac=save
ct=index:控制器入口,对应到目录control中的index.php
如果RunApp()指定了第三个参数,例如问答中RunApp($ct, $ac , 'admin'),说明ct=index:控制器入口,对应到目录control/admin中的index.php
ac=save:操作,对应文件index.php中的class index中function ac_save()
控制器中将相关功能操作都存放至一个文件中,例如留言板,可以使用:
?ct=guestbook&ac={do}统一完成,这样也便于静态化部署.
1.控制器开发说明(control):
基本代码结构:
class yourctname extends Control
{
public function ac_save()
{
}
}
控制器可以选择继承一个基类:Control,这个类对应的文件名是/include/control.class.php,这里面含有基类的相关操作说明,这里有几个常用方法:
$control->Model();
//载入一个模型。例如问答模块中index.php中的 $this->question = $this->Model('mquestion'),就是在载入了mquestion这个模型。然后我们就可以通过$this->question来调用模型相应操作。实现数据的插入,更新等等操作。调用类的名字可以随便定义,但要保证没有冲突。模型的文件放在model目录中。
$control->Libraries();
//载入一个类。有时开发我们需要一个系统中不存在的类时,我们可以通过这个方法来载入一个自己的类。具体的方法和模型一样。类放在libraries目录中。
$control->helper();
//载入一个小助手。引入小助手是为了更好的帮助我们存放和管理需要用到的Function。
具体的方法和模型一样。小助手放在data\helper目录中。
$control->SetTemplate();
$control->SetTemplet(); // 设定当前操作需要指定的模板;
$control->SetVar($k, $v); // 设定模板需要解析的变量,在模板中使用{dede:var.name /}进行调用.
GLOBALS['k'] = $k;
// 设定模板需要的变量,在模板中可以直接用<?php echo $k;?>方式输出(问答模块基本上都是采用这样的方式输出),这种方式比较适合处理一些复杂的数据,例如数组。
$control->GetVar($k); // 获取设定的模板变量
$control->Display(); // 显示模板解析后的内容
$control->SaveTo(); // 将内容保存到文件
控制器中关于模板的使用操作可以参看DedeTemplate模板引擎,具体可以参看公司内部开发文档中模板说明相关章节.
模型开发说明(Model):
class mtype extends Model
{
public function get_one()
{
}
}
控制器可以选择继承一个基类:Model,这个类对应的文件名是/include/model.class.php,这里面含有数据库类的相关操作说明,这里只有一个方法:
$model->dsql();
//实例化数据库操作类。模型中关于数据库类的使用操作可以参看数据库类使用说明(http://help.dedecms.com/v53/archives/functions/db/)
模板标签调用说明:
如果在控制器中通过$control->SetVar($k, $v); 这种方式设定的参数,我们通过标签 {dede:var.name /}的方式进行调用。
如果在控制器中通过GLOBALS['k'] = $k;这种方式设定的参数,我们通过标签 {dede:global.name/}的方式进行调用或者直接采用php的方式进行输出。
更多的关于模板标签的使用可以到http://help.dedecms.com/v53/ 上进行查询
转载于:https://blog.51cto.com/dason/531918
DedeCMS V5.7模块MVC框架基本说明相关推荐
- dedeCMS,标准的MVC框架运行原理和缓存
2019独角兽企业重金招聘Python工程师标准>>> 1.织梦的工作原理: a.模板引擎: b.内核文件的载入.读取: 运行原理:url->配置文件->公共 ...
- 游戏mvc框架与模块
先谈前端主架构,前端程序主架构有两个主要任务:1,要从架构高度合理划分前端各模块,提出可行的实现方案:2,从AS级别搭建程序架构(非文档级别),制定前端编程规则和接口,规范程序各部分的职责划分.这两个 ...
- mvc的宿舍管理系统源码 基于jsp_[源码和文档分享]基于JSP的MVC框架实现的图书推荐系统展示平台网站...
推荐系统是目前互联网中最常见的一种智能产品形式.由于网络中信息量的快速增长以及图书出版行业出版量的攀升,人们需要一种办法,来解决信息过载的问题.此外,用户访问网络是为了获取信息,但并不是所有的访问都有 ...
- SpringMVC背景介绍及常见MVC框架比较
一.Spring MVC 背景介绍 Spring框架提供了构建Web应用程序的全功能MVC模块.使用Spring可插入的MVC架构,可以选择是使用内置的Spring Web框架还是Struts这样的W ...
- ASP.NET Core 入门教程 2、使用ASP.NET Core MVC框架构建Web应用
原文:ASP.NET Core 入门教程 2.使用ASP.NET Core MVC框架构建Web应用 一.前言 1.本文主要内容 使用dotnet cli创建基于解决方案(sln+csproj)的项目 ...
- spring mvc框架设计与实现
spring mvc框架通过DispatcherServlet来作请求分发,主要由HandlerMapping,HandlerAdapter,HandlerInterceptor三个抽象来完成.通过H ...
- Django之MVC框架与MTV框架详解
Django框架简介 MVC框架和MTV框架(了解即可) MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图 ...
- Apache OFBIZ高速上手(二)--MVC框架
继续上一篇博客,本篇博客介绍OFBiz的MVC框架. 1.OFBiz特点 OFBiz最基本的特点是OFBiz提供了一整套的开发基于Java的web应用程序的组件和工具.包含实体引擎.服务引擎.消息引擎 ...
- MVC框架浅析(基于PHP)
MVC框架浅析(基于PHP) MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数 ...
最新文章
- 传智播客java基础的习题_传智播客java基础班(集合与IO)阶段测试题
- Layout of the output array img is incompatible with cv::Mat (step[ndims-1] !
- python基础知识笔记简书_Python基础学习笔记
- 2-spark学习笔记-spark发展概述
- 斯坦福大学深度学习与自然语言处理第三讲:高级的词向量表示
- Java多线程面试准备:聊聊Executor框架
- CSS3--transition
- HDU 4332 Constructing Chimney [状态压缩+矩阵]
- java婚庆网站源码_基于jsp的婚庆网站-JavaEE实现婚庆网站 - java项目源码
- 13 张图带你学懂 Kubernetes Service(转载)
- mongodb 数组查询 php,关于PHP,查询mongodb里的数组的问题
- 无心剑中译雪莱诗14首
- vc中调用其他应用程序的方法(函数) winexec,shellexecute ,createprocess 1
- 3.数据结构 --- 栈和队列
- css3媒体查询实例,css3 响应式媒体查询的示例代码
- 时间表达式java定时器_java--定时器
- 启航——我的第一篇博客
- python 网络爬虫
- 快速查看Mac下软件的所有快捷键— CheatSheet
- c 语言字体怎么改,Notepad++设置字体语言格式方法介绍