控制器部分主要进行业务逻辑的编写,页面跳转,视图显示。
首先我们建立一个delphi类需要继承BaseAction
如果有朋友问怎么建立,就是建立一个unit文件,没有的代码敲进去。uses 部分主要用到
superobject,view,baseaction
这里我定义了2个方法,load 打开登录页面,check 检查登录帐号
这2个方法路由配置
打开webmodel模块,
设定 访问 / 根目录时 响应哪个是事件,这里我们定义为LoginAction 事件
双击进入代码块,(这里参考了jfinal 方式)
创建我们用到的控制器,这里我们创建 TLoginAction,并指定 控制器 视图 文件所在目录(第二个参数)。
执行 Load 方法,处理完毕释放此类。
command文件夹下有一个 config文件
这里进行一些参数配置,其中session部分等后面介绍session 时说明。
下面是对代码的编写,例如我们访问根目录 / 打开登录页面
首先创建一个 登录页面 html 放在 bin\view\login\ 目录下,名称叫做 login.html
上面我们已经指定 访问路径 相应的 控制方法,
我们只需要在控制器方法内编写对应代码
我们只要执行这一句话 ShowHTML('login');即可打开 view\login\login.html 文件
如果我们想在页面上显示数据只要执行
同时在 html页面中 加入 标记 <#sdata> 在页面的该位置将会显示 数据。
如果需要返回json格式数据,这里我们使用check 方法 访问路径 login/check
创建 TloginAction 类相应 check方法,类的每次创建和释放,是为了内存能得到充分使用,
具体性能如何还有待测试,暂且先这样。
check 代码下图
Q() 函数 是 对字符串添加 引号,input 函数是获取 传入参数(这里参考了thinkphp参数获取函数名)。
Db类的设计也有些 jfinal 的味道,函数参数设计部分参考了thinkphp
Db.TableFirst 方法是查询表的第一条数据,参数1表名,参数2查询条件
如果想直接返回 json 格式 可直接使用 ShowJSon 函数,
如果想返回自定义格式 使用json类 使用 showText 返回 json 字符串
其中 TableFirst 方法的表名 是在 TableMap文件定义,这里直接写表名也可以。
下面是 view 类 主要方法
下面是Db 类的主要方法
官网http://www.delphiwebmvc.com/