• 拿到禅道二开的一个需求,首先要确定的是 URL。

    URL所包含的信息

  • http://xxxxx:port/zentao/custom-set-bug-customerPackageList-zh_cn.html

  • cutome - 模块
  • set - 为该模块下视图
  • bug - customerPackageList 为涉及到的参数。

    根据URL定位到源码信息

  • module/custom 模块下目录解释

    • config 该模块下所有配置文件
    • css/js 层叠样式表,js代码
    • lang 该模块下所有字库文件,禅道的特性是所有视图文件中不会有明文的汉字字符,所有字符统一封装在字库文件内。
    • view 视图层,前端资源存放地,
    • control 控制层方法, 一般而言,前端 - control - model - DB
    • model 后端主要方法,、
    • ext 官方规定的二次开发扩展规范。具体规范看前几篇文档即可。

      定位到源码之后找到对应的方法

  • 上例子中 control下找到set方法,尝试进行修改或者debug去读懂源码的调用逻辑

    一般而言的修改思路

    自底向上

  • DB -> lang 字库 -> control(如果需要) -> model -> view

自上向下

  • view -> lang 字库(控制前端显示) ->control -> model -> DB