DTCMS

一、DTcms模板生成机制

1、后生执行生成模板时,系统自动进入相应的主题模板检遍历模板文件

2、将模板文件与urls.config文件里面的rewrite节点的templet属性内容相对比

3、如果找到相对应的节点信息,则生成aspx文件到站点的aspx目录下

4、如果找不到符合条件的节点,不生成aspx文件;

二、DTcms网站访问映射处理流程

1、用户访问网站时,首先要经过HttpModel类的解析

2、HttpModel与urls.config匹配,符合条件则将访问的URL地址映射到站点目录下的aspx目录里的对应文件,否则不进行URL映射,直接访问原URL地址

三、urls.config文件节点属性说明

Name:URL配置的(名称)key,唯一标识

Path:URL重写后的地址

pattern:URL重写的正则表达式

page:源页面真实名称

querystring:传输的参数($1,$2,$3 ……)

templet:对应的模板文件的名称

channel:所属频道的ID,不是频道请为0

type:该页面的类型(首页:index,列表页:list,详细页:detail,不允许重写:no)

inherit:该页面所要继承的全局限定类名

四、新增自定义模板步骤


===>通过管理页面也可以做到,实际是修改了urls.config

===>Name、Path、 URL-pattern

artile_list.aspx==就是根据article_list.html

1、新增urls.config文件节点信息

2、在DTcms.Web.UI项目下的Page文件夹下新增处理该页面的方法

3、制作相对应的模板文件

4、进入后台生成模板文件

===>type/inherit/channel/template 模版文件对应

传输参数:category_id=$1^page=$2

====>web.UI/page

protected override void showpage()

{page=DTRequest.getueryint(--定义的参数名

 category_id=DTRequest.getqueryint(定义的参数名

}



五、新增自定义模型步骤
search.aspx?key=$1

通过-对应的伪规则。--选择禁用重写。。。。手工输入class名称,其实是关联aspx和。cs文件

web.UI.basepage=====> 建立search class......

1、建立模型对应的数据库表


2、建立表映射的Model类、业务逻辑层(BLL) 类、数据访问层(DAL) 类

3、制作后台管理界面文件

4、在DTcms.Web.UI项目下的Page文件夹下新增处理该模型的模板页的处理的方法

5、进入后台>控制面板>系统模型配置>添加模型,填写后保存

6、新建一个频道,选择该模型

7、制作该频道的模板文件
模版文件中使用的是来自page下面class的数据返回的。。。

8、进入后台生成模板即可



你可能感兴趣的:(DTCMS)