禅道二次开发——禅道zentaoPHP框架扩展机制——对视图层(view)扩展

视图文件的扩展分为两种方式,一种是完全覆盖,第二种是通过钩子机制来扩展。

一、完全覆盖

视图文件的覆盖可以通过完全覆盖的方式来重新定义。比如我对bug模块的create页面进行扩展。原来的视图文件是存放在module/bug/view/create.html.php。如果需要对其进行扩展,只需要将这个create.html.php拷贝到extension/custom/bug/ext/view/create.html.php,然后对这个网页进行修改就可以了。

需要注意的是拷贝过去时候,包含路径要做相应的改动。

二、通过钩子进行扩展

第一种方法比较简单,也比较直观,但有它的缺点,就是代码无法重用。假设后面版本有了新的改动之后,老版本的视图文件和新版本的程序就有可能不兼容。所以可以考虑通过钩子脚本来实现代码的重用。钩子脚本的命名规则为方法名.扩展名.html.hook.php。该钩子文件会在整个模板加载完之后加载,在里面可以执行相应的php代码,或者js代码。这样就提供了一种通过js来动态修改页面元素的机制,从而达到对页面元素的完全控制。

比如extension/custom/misc/ext/view/getsid.color.html.hook.php

$('#topbar').css('color', 'red');

通过上面这段js代码,实现了对顶部导航条的加红显示。

免费活动: 项目管理经验0元购,来奇妙敏捷之旅(青岛站) - 禅道项目管理软件

原文链接: zentaoPHP二次开发简介 - 禅道二次开发 - 禅道项目管理软件


以上就是《禅道二次开发------禅道zentaoPHP框架扩展机制------对视图层(view)扩展》的全部内容,喜欢的可以给猴哥点赞👍关注收藏,下期想了解什么知识和功能,可以在评论区留言,欢迎大家积极讨论交流!谢谢!

相关推荐
Watermelo61712 小时前
在线编程实现!如何在Java后端通过DockerClient操作Docker生成python环境
java·spring boot·docker·微服务·云原生·容器·devops
程序员威子12 小时前
软件测试中的白盒测试,这些技巧你知道吗?
功能测试·测试工具·jmeter·单元测试·测试用例·压力测试·postman
程序员小雷15 小时前
字节面试 | 如何测试RocketMQ、RocketMQ?
测试工具·面试·职场和发展·单元测试·测试用例·rocketmq·postman
勤奋的小王同学~20 小时前
(Charles)如何抓取手机http的报文
测试工具·charles
土小帽软件测试1 天前
F12抓包06-1:浏览器导出postman测试脚本
测试工具·接口测试·postman·抓包·软件测试学习·f12·f12抓包
漆黑的莫莫1 天前
经验笔记:持续集成/持续部署(CI/CD)流程
笔记·ci/cd
青竹雾色间1 天前
安装Selenium进行web⾃动化测试
前端·selenium·测试工具
Cosmos复调2 天前
图文解析保姆级教程:Postman专业接口测试工具的安装和基本使用
笔记·后端·测试工具·软件工程·postman
花落已飘2 天前
WireShark抓包软件介绍和安装
网络·测试工具·wireshark
cooldream20092 天前
Sysbench性能测试工具的安装与使用
测试工具·sysbench