没有合适的资源?快使用搜索试试~ 我知道了~
禅道定制开发:适用于禅道的二次开发、开发项目管理软件
资源详情
资源评论
资源推荐
禅道定制开发
1.1. 二次开发机制
禅道项目管理软件是使用我们自主开发的 zentaoPHP 框架开发的。zentaoPHP 框架
实现了功能强大的扩展机制、API 调用机制和命令行机制。您可以使用不同的机制来实现
对禅道功能的修改、扩展。也可以和其他的系统进行集成,也可以部署各种自动化脚本对
禅道进行各种操作。
因此请您仔细阅读下面的文档,以充分了解 zentaoPHP 框架的二次开发机制:
1. zentaoPHP 框架基本使用手册:http://devel.cnezsoft.com/book/zentaophphelp.html
2. zentaoPHP 框架二次开发机制:http://devel.cnezsoft.com/book/extension.html
1.2. 禅道的目录结构
了解了 zentaoPHP 框架的基本原理和二次开发机制之后,您对禅道项目管理软件的目
录结构应该也比较熟悉了。
顶级目录结构
www 目录
module 目录
module 目录下面总共有 30 多个模块,分别对应了禅道里面的某一个功能模块。整个
禅道的功能,就是由这些模块组合而成。让我们来看一个具体的模块。
1.3. 找到要修改的文件
要想对禅道进行修改,就必须知道对应的代码在什么地方。在了解了禅道的目录结构
之后,我们来看下禅道的请求是如何对应到代码的。
1. control 方法的定位
control 方法是每一个页面的入口,顺藤摸瓜,让我们先来看个例子:bug-browse-
1.html 或者是/?m=bug&f=browse&productID=1&t=html。这里面有什么玄机呢?让我们来
揭晓。
bug-browse-1.html,表示是访问 bug 这个模块的 browse 方法,传递的第一个参数为
1,访问的页面类型是 html。
同样,/?m=bug&f=browse&productID=1&t=html,m 代表了模块名称,f 代表了方法名称,
后面的则是参数列表。
那么我们就可以对应到禅道的源代码,module/bug/control.php 中的 browse 方法:
2. control 方法里面的调用
ok,我们现在已经知道了入口的函数在什么地方,我们来跟到里面看看吧。
$this->bug,表示的是调用 bug 模块的 model 对象,那么它对应的文件在什么地方呢?聪
明的你,应该已经猜到了吧。在 module/bug/model.php
this->loadmoel('tree')->xxx,表示加载 tree 模块的 model 对象,它对应的文件在
module/tree/model.php
$this->app->loadClass('pager'),表示加载一个 lib 类,它对应的文件则在 lib/pager/
pager.class.php
$this->lang->bug->xxx,它的定义在 module/bug/lang/zh-cn.php。后面的 zh-cn 根据
当前用户的语言而定。
后来看模块文件。$this->display()之后,调用的是 view 目录下面和当前方法同名的模
板文件。比如 bug 的 browse 方法,它对应的模板文件是 module/bug/view/
browse.html.php
1.4. 禅道的数据库结构
禅道的数据库命名都比较简明扼要,从字面意思应该都可以猜出来表的用途。如果还
不是很清楚的话,可以到每个表对应的模块下面的语言文件里面查找。
1. 产品相关的表
zt_product,则记录了产品相关的信息。
zt_productPlan,则记录了产品的计划信息。
zt_story,是非常重要的一张表,记录了系统中所有的需求记录。zt_storySpec 表
是记录了 story 的历史信息。
zt_release,记录了产品的发布信息。这张表同时也和 zt_build 互相关联。
剩余12页未读,继续阅读
小名照深
- 粉丝: 132
- 资源: 14
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0