zoukankan      html  css  js  c++  java
  • hdwik中view模块的应用

     概述
            MVC中的视图view 主要负责页面显示部分,所有的页面显示全部在此实现,视图对整个页面负责,它通过control的调用来显示页面和数据.
    视图(view)类template.class.php路径/lib/template.class.php, 视图类在每个control类的父类(base.calss.php)的构造函数中初始化,主要有以下几个部分,包括设置语言,设置风格,传递变量,显示最终页面,其中前两个在初始化时已被设置,在控制器(control)用的一般就是传递变量和显示最终页面两个部分.
    视图(view)文件存放于 view/default/文件夹中,如果自己新添加新的模板,可以存放于不同的文件夹,例如 view/mediawiki/文件夹下,命名基本以功能为主,例如viewdoc.thm表示就是浏览词条的页面,


    结构
        控制器control调用视图示例代码如下:
    $this->view->assign('navigation',$navigation);
    $this->view->display('viewdoc');

    相关解释:
    1、$this->view->assign('navigation',$navigation);将$navigation变量的值传递给navigation,页面中可以直接调用nvaigation
    2、$this->view->display('viewdoc'); 调用视图文件viewdoc.htm文件并显示最终页面

    语法
        在视图文件(如/view/default/viewdoc.htm)中使用较多的有3个部分
    1.引入其他视图文件 {template header} 便可引入视图文件header.htm

    2.循环显示数据使用loop $doc['title']

    这样便可以循环显示词条列表的每个标题了,$doclist是control文件中传入的变量,示例中表示词条列表,$doc是可以自己命名的,表示doclist数组的第x个元素

    $doc['title']就是doclist每个元素的子元素,是control文件中传递过来的

    3.判断语句使用if
    显示一个东西
    $tag是control控制器传递过来的变量,判断是否和某个值相等或不等,便可在页面中控制某个地方是否显示

    开发
        若添加一个新的视图,需要在控制器(control)中添加新的业务逻辑,取得数据后传递给页面中需要的变量,调用视图文件显示出来,以做个页面显示用户总数为例,以下分步骤演示:
    1.新添加个控制器方法,例如在/control/user.php文件中添加个用户总数的方法function usercount()
    2.在usercount方法中通过模型(model)得到用户总数
    3.通过$this->view->assign('usercount',$usercount); 把变量传递个页面中usercount
    4.通过$this->view->display('usercount');调用/view/default/usercount.htm文件显示用户总数
    5./view/default/usercount.htm文件可以使用各种网页编辑器编辑,如果需要显示数组数据的可以通过loop调用,如果需要判断语句的可以通过if调用,在页面上调用用户总数可以用{$usercount} ,$usercount是从control中传递的

    这样添加一个新的视图就完成了

  • 相关阅读:
    alias这个命令还是很有用的
    为什么不推荐用破解版的winrar
    chrome headless
    关于PDF的一些书籍
    PDF的一些工具
    3DPDF是个什么东西?
    你可能不知道的pdf的功能
    为什么一些公司把dwg文件转化为pdf
    关于pdf阅读器的选择
    接外包怎么保护自己的作品
  • 原文地址:https://www.cnblogs.com/camelroyu/p/5645930.html
Copyright © 2011-2022 走看看