学习ectouch之文件结构

相信大家在ectouch官网都注意到了,ectouch采用的MVC框架,之前一直以为它用的和ecshop一样都是smarty,本鸟默默按照smarty的文件结构研究了好几天,结果是各种文件对不上号。无奈之下问了度娘才明白我的思考从一开始就是个错误(妹的,这么简单的错误,我竟真的如此认真地研究了好几天,也是醉了,大家平时还是多与度娘沟通,别和我一样遇到个问题就坐在那里想。。。)。说的够多了,该正题了。

先说一下MVC结构,相信大家能在网上找到不少这方面的资料,这里就ectouch的文件简单总结下。

模块(The Model): 即M

主要包含那些用来操作数据库的函数 文件后缀一般是***Model.class.php 路径一般是../mobile/include/apps/default/model/

控制器(The Controller):即C

控制器是所有WEB应用的第一站,它接受收到的参数,比如$_GET变量,然后做出相应的反应。主要包含处理用户各种操作的函数 文件后缀一般是***Controller.class.php 路径一般是../mobile/include/apps/default/controller/

视图(The View):即V

一说到视图,我们很多人都会想到模板引擎(诸如Smarty等等)。其实就是各种各样的输出,比如说html模板和Javascript文件等。模板路径一般是../mobile/themes/default/

目录结构

根目录
  |  –  admin 默认后台管理目录(可任意改名)
  |  –  data 静态资源和系统缓存、配置项目录(必须可写入)

|  – assets 静态资源目录

|  – attached 附件目录

|  – cache缓存目录
 
       |  – common 公共静态文件目录 
  |  –  include 核心程序目录 

|  – apps 主程序
            |  – admin 后台模块

|  – install 安装模块

|  – default 前台默认模块
                 |  – common 公共方法

|  – controller 控制器

|  – language 语言包

|  – model  模型 
       |  – base 基础程序

|  – driver驱动程序

|  – library 主类库

|  – vendor 第三方扩展类

|  –  plugins 插件程序目录  

|  – connect授权登录

|  – wechat 微信
       |  – integrates 第三方用户整合
       |  – payment 支付方式

|  – shipping 配送方式

|  –  themes系统默认模板目录

  url结构

  ECTouch是采用个MVC设计模式开发,基于模块和操作的方式进行访问,并且使用单一入口模式进行项目部署和访问,任何功能和模块的访问,只有通过此入口文件。

模块访问方法[示例]:  index.php?m=default&c=category&a=index&id=2

其中 
  m = default 为模块名称位于include/apps/

c = category 为控制器名称位于include/apps/default/controller/IndexController.class.php

a = index 控制器访问方法名称 位于include/apps/default/controller/IndexController.class.php 中index()方法

id = 2 为其他参数 与正常get传递参数形式相同 
模块和操作方法 
  ECTouch中的模块,位于include/apps/目录中 每一个目录称之为一个模块。即url访问中的m [示例]:

index.php?m=default&c=index 
  那么您访问的就是ECTouch/include/apps/default这个模块。 
  如果创建一个前台模块,只要在 include/apps/default 目录下创建:模块名称+Model.class.php  
控制器 
  控制器就是模块文件下面controller下的类文件,位于include/apps/模块/controller/下面。

命名规则为:文件名+Controller.class.php,文件名开头字母大写,例如一个名为test的控制器,那么他的命名为TestController.class.php即可。控制器类的类名称与控制器文件名必须相同。 
  如果您创建了一个TestController.class.php在default模块下,那么我们在浏览器里面输入URL: 
http://localhost/ectouch/mobile/index.php?m=default&c=test 即可访问到相应控制器

如果你添加的控制器类继承了其他的类,那么要注意你类中的方法名称不能和父类的方法名称重复,否则会覆盖原有的或者出现程序运行错误。

例如default模块的类继承了CommonController类,而这个类中定义了view方法,那么就不能再重复定义这个方法了。 
命名规范 
  规范如下:   
  核心程序目录(includes)的类文件需要以.class.php 为后缀名称,开头第一个字母大写。例如:IndexModel.class.php  
  控制器和模型中的类名和文件名一致,例如IndexModel.class.php的类名为:IndexModel

时间: 2024-10-11 18:56:58

学习ectouch之文件结构的相关文章

学习ectouch之开启页面调试模式

页面报错对于发现编程过程中的问题很重要,所以在开发之前要先搞定它,免得出了问题不知道在哪下手,瞎耽误功夫(本人深有感触). 不说废话了,进入正题 ectouch 开始调试模式方法: 修改 mobile\include\Convention.php  关闭调试模式 'DEBUG' => false, // 是否开启调试模式,true开启,false关闭 修改mobile\include\Common.php  搜索函数funciton E  /**  * 抛出异常处理  * @param stri

【Lucene】Lucene 学习之索引文件结构

Lucene 索引文件结构 基本概念 索引(index) Lucene的索引由许多个文件组成,这些文件放在同一个目录下 段(segment) 一个Lucene的索引由多个段组成,段与段之间是独立的.添加新的文档时可以生成新的段,达到阈值(段的个数,段中包含的文件数等)时,不同的段可以合并. 在文件夹下,具有相同前缀的文件属于同一个段 segments.gen 和 segments_N(N表示一个具体数字,eg:segments_5)是段的元数据文件,他们保存了段的属性信息. 文档(documen

linux学习笔记之文件结构和函数

一.基础介绍. 1:文件的构成. 1,首先声明,这里的文件和目录,仅仅表示普通的文件和目录.不代表设备,管道等特殊形式的文件(UNIX把它们也当作文件处理). 2,目录的构成:v节点编号和文件名. 1)v节点:文件系统相关的节点.文件类型,各类文件操作函数指针.但目录中包含的是节点编号,不是节点本身. 3,文件的构成:v节点和i节点. 1)i节点:文件所有者,长度,磁盘实际所在位置指针等. 2)linux中,没有v节点,只有两个i节点.一个和文件系统相关,一个无关. 3)链接文件的实际内容(数据

Android学习心得(16) --- Dex文件结构实例解析(2)

我在博客上发表一些我的Android学习心得,希望对大家能有帮助. 这一篇我们讲述一下通过一个实例来分析dex文件结构和组成. 参考Leb128数据类型 Android学习心得(5) --- dex数据类型LEB128 参考实例分析学习理解dex文件结构Android学习心得(15) --- Dex文件结构解析(1) 参考baksmali工具使用Android学习心得(4) --- MAC下smali文件编写与运行 1.编译 我们通过一个例子来分析dex文件的构成 创建一个Hello.java文

Android学习心得(15) --- Dex文件结构解析(1)

我在博客上发表一些我的Android学习心得,希望对大家能有帮助. 这一篇我们讲述一下Android可执行文件dex的结构解析. 参考Leb128数据类型 Android学习心得(5) --- dex数据类型LEB128 参考实例分析学习理解dex文件结构Android学习心得(15) --- Dex文件结构解析(1) 1.Dex背景 Android应用开发和Dalvik虚拟机Android应用所使用的编程语言是Java语言,在编译时使用JDK将Java源程序编程成标准的Java字节码文件. 而

jvm 类文件结构学习

本文以代码示例来学习 java 类文件的结构,其中对类文件结构的学习均来自周志明先生所著的 <深入理解 Java 虚拟机>一书,在此表示诚挚的感谢. 代码如下: 1 package com.reycg.jvm; 2 3 public class ReferenceCountingGC { 4 5 public Object instance = null; 6 7 public static void testGC() { 8 ReferenceCountingGC objA = new Re

JVM学习04:类的文件结构

JVM学习04:类的文件结构 写在前面:本系列分享主要参考资料是  周志明老师的<深入理解Java虚拟机>第二版. 类的文件结构知识要点Xmind梳理 原文地址:https://www.cnblogs.com/wobuchifanqie/p/10786296.html

Java-J2SE学习笔记-树状展现文件结构

1.利用java.io相关类树状展现文件结构 2.判定给定路径是否为dir,是则递归,每一递归一层缩进一次 3.代码 package Test; import java.io.File; public class TestHierarchical { public static void main(String[] args) { File file = new File("D:/Workspaces/eclipse/test"); tree(file, 0); } private s

ectouch第二讲之 文件结构

相信大家在ectouch官网都注意到了,ectouch采用的MVC框架,之前一直以为它用的和ecshop一样都是smarty,本鸟默默按照smarty的文件结构研究了好几天,结果是各种文件对不上号.无奈之下问了度娘才明白我的思考从一开始就是个错误(妹的,这么简单的错误,我竟真的如此认真地研究了好几天,也是醉了,大家平时还是多与度娘沟通,别和我一样遇到个问题就坐在那里想...).说的够多了,该正题了. 先说一下MVC结构,相信大家能在网上找到不少这方面的资料,这里就ectouch的文件简单总结下.