Suche senden
Hochladen
100305 trac-plugin-dev-intro
•
0 gefällt mir
•
597 views
Zoom Quiet
Folgen
CPyUG会课总第38期~暨珠三角技术沙龙第6次 http://wiki.woodpecker.org.cn/moin/ZPyUG/2010-03-14
Weniger lesen
Mehr lesen
Melden
Teilen
Melden
Teilen
1 von 26
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
Linux network monitoring hands-on pratice
Linux network monitoring hands-on pratice
Kenny (netman)
Financial Crisis Watch 1 July 2009
Financial Crisis Watch 1 July 2009
thinkingeurope2011
110407 liupeng-深入windows窗口和消息
110407 liupeng-深入windows窗口和消息
Zoom Quiet
Financial Crisis Watch 13 June 2009
Financial Crisis Watch 13 June 2009
thinkingeurope2011
Economic Recovery Wach 14 January 2010
Economic Recovery Wach 14 January 2010
thinkingeurope2011
Avoiding the Debt Trap: Public Finances in Crisis and Recovery
Avoiding the Debt Trap: Public Finances in Crisis and Recovery
thinkingeurope2011
Ideas to Actions: A Springeneration for EU-MENA Cooperation in Education
Ideas to Actions: A Springeneration for EU-MENA Cooperation in Education
thinkingeurope2011
European View - Volume 3 - Spring 2006 Transnational Parties and European Dem...
European View - Volume 3 - Spring 2006 Transnational Parties and European Dem...
thinkingeurope2011
Empfohlen
Linux network monitoring hands-on pratice
Linux network monitoring hands-on pratice
Kenny (netman)
Financial Crisis Watch 1 July 2009
Financial Crisis Watch 1 July 2009
thinkingeurope2011
110407 liupeng-深入windows窗口和消息
110407 liupeng-深入windows窗口和消息
Zoom Quiet
Financial Crisis Watch 13 June 2009
Financial Crisis Watch 13 June 2009
thinkingeurope2011
Economic Recovery Wach 14 January 2010
Economic Recovery Wach 14 January 2010
thinkingeurope2011
Avoiding the Debt Trap: Public Finances in Crisis and Recovery
Avoiding the Debt Trap: Public Finances in Crisis and Recovery
thinkingeurope2011
Ideas to Actions: A Springeneration for EU-MENA Cooperation in Education
Ideas to Actions: A Springeneration for EU-MENA Cooperation in Education
thinkingeurope2011
European View - Volume 3 - Spring 2006 Transnational Parties and European Dem...
European View - Volume 3 - Spring 2006 Transnational Parties and European Dem...
thinkingeurope2011
Python 于 webgame 的应用
Python 于 webgame 的应用
勇浩 赖
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
Scourgen Hong
Btrace intro(撒迦)
Btrace intro(撒迦)
ykdsg
Linux binary Exploitation - Basic knowledge
Linux binary Exploitation - Basic knowledge
Angel Boy
高级服务器设计和实现3
高级服务器设计和实现3
Feng Yu
Ali-tomcat
Ali-tomcat
wang hongjiang
DEV305 - ASP.NET 5 開發攻略
DEV305 - ASP.NET 5 開發攻略
Will Huang
基于Symfony框架下的快速企业级应用开发
基于Symfony框架下的快速企业级应用开发
mysqlops
Asp.net core v1.0
Asp.net core v1.0
chang kuo-chao
Asp.net core v1.0
Asp.net core v1.0
國昭 張
Software Engineer Talk
Software Engineer Talk
Larry Cai
Win dbg入门
Win dbg入门
晓锋 陈
Windbg入门
Windbg入门
晓锋 陈
使用 TypeScript 駕馭 Web 世界的脫韁野馬:以 Angular 2 開發框架為例
使用 TypeScript 駕馭 Web 世界的脫韁野馬:以 Angular 2 開發框架為例
Will Huang
Modern web 2020 - 使用 Nx 管理超大型前後端專案
Modern web 2020 - 使用 Nx 管理超大型前後端專案
升煌 黃
Nodejs & NAE
Nodejs & NAE
q3boy
如何选择 Docker 监控方案
如何选择 Docker 监控方案
Leo Zhou
ElasticSearch Training#2 (advanced concepts)-ESCC#1
ElasticSearch Training#2 (advanced concepts)-ESCC#1
medcl
Introduction to NodeJS
Introduction to NodeJS
TechParty@UIC
基于MySQL开放复制协议的同步扩展
基于MySQL开放复制协议的同步扩展
Sky Jian
42qu thrift1
42qu thrift1
Zoom Quiet
产品信息收集系统Infoc的演变
产品信息收集系统Infoc的演变
Zoom Quiet
Weitere ähnliche Inhalte
Ähnlich wie 100305 trac-plugin-dev-intro
Python 于 webgame 的应用
Python 于 webgame 的应用
勇浩 赖
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
Scourgen Hong
Btrace intro(撒迦)
Btrace intro(撒迦)
ykdsg
Linux binary Exploitation - Basic knowledge
Linux binary Exploitation - Basic knowledge
Angel Boy
高级服务器设计和实现3
高级服务器设计和实现3
Feng Yu
Ali-tomcat
Ali-tomcat
wang hongjiang
DEV305 - ASP.NET 5 開發攻略
DEV305 - ASP.NET 5 開發攻略
Will Huang
基于Symfony框架下的快速企业级应用开发
基于Symfony框架下的快速企业级应用开发
mysqlops
Asp.net core v1.0
Asp.net core v1.0
chang kuo-chao
Asp.net core v1.0
Asp.net core v1.0
國昭 張
Software Engineer Talk
Software Engineer Talk
Larry Cai
Win dbg入门
Win dbg入门
晓锋 陈
Windbg入门
Windbg入门
晓锋 陈
使用 TypeScript 駕馭 Web 世界的脫韁野馬:以 Angular 2 開發框架為例
使用 TypeScript 駕馭 Web 世界的脫韁野馬:以 Angular 2 開發框架為例
Will Huang
Modern web 2020 - 使用 Nx 管理超大型前後端專案
Modern web 2020 - 使用 Nx 管理超大型前後端專案
升煌 黃
Nodejs & NAE
Nodejs & NAE
q3boy
如何选择 Docker 监控方案
如何选择 Docker 监控方案
Leo Zhou
ElasticSearch Training#2 (advanced concepts)-ESCC#1
ElasticSearch Training#2 (advanced concepts)-ESCC#1
medcl
Introduction to NodeJS
Introduction to NodeJS
TechParty@UIC
基于MySQL开放复制协议的同步扩展
基于MySQL开放复制协议的同步扩展
Sky Jian
Ähnlich wie 100305 trac-plugin-dev-intro
(20)
Python 于 webgame 的应用
Python 于 webgame 的应用
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
Btrace intro(撒迦)
Btrace intro(撒迦)
Linux binary Exploitation - Basic knowledge
Linux binary Exploitation - Basic knowledge
高级服务器设计和实现3
高级服务器设计和实现3
Ali-tomcat
Ali-tomcat
DEV305 - ASP.NET 5 開發攻略
DEV305 - ASP.NET 5 開發攻略
基于Symfony框架下的快速企业级应用开发
基于Symfony框架下的快速企业级应用开发
Asp.net core v1.0
Asp.net core v1.0
Asp.net core v1.0
Asp.net core v1.0
Software Engineer Talk
Software Engineer Talk
Win dbg入门
Win dbg入门
Windbg入门
Windbg入门
使用 TypeScript 駕馭 Web 世界的脫韁野馬:以 Angular 2 開發框架為例
使用 TypeScript 駕馭 Web 世界的脫韁野馬:以 Angular 2 開發框架為例
Modern web 2020 - 使用 Nx 管理超大型前後端專案
Modern web 2020 - 使用 Nx 管理超大型前後端專案
Nodejs & NAE
Nodejs & NAE
如何选择 Docker 监控方案
如何选择 Docker 监控方案
ElasticSearch Training#2 (advanced concepts)-ESCC#1
ElasticSearch Training#2 (advanced concepts)-ESCC#1
Introduction to NodeJS
Introduction to NodeJS
基于MySQL开放复制协议的同步扩展
基于MySQL开放复制协议的同步扩展
Mehr von Zoom Quiet
42qu thrift1
42qu thrift1
Zoom Quiet
产品信息收集系统Infoc的演变
产品信息收集系统Infoc的演变
Zoom Quiet
Go courseday3
Go courseday3
Zoom Quiet
Go courseday2
Go courseday2
Zoom Quiet
Go courseday1
Go courseday1
Zoom Quiet
01s0401 go,互联网时代的c语言 许式伟
01s0401 go,互联网时代的c语言 许式伟
Zoom Quiet
Zoz pwned-by-the-owner-表惹程序猿
Zoz pwned-by-the-owner-表惹程序猿
Zoom Quiet
金山云查询系统改进之路1
金山云查询系统改进之路1
Zoom Quiet
Zh120226techparty zd-story
Zh120226techparty zd-story
Zoom Quiet
Zh120226techparty velocity2011-review
Zh120226techparty velocity2011-review
Zoom Quiet
Zh120226techparty jeff kit-ios-toolbox
Zh120226techparty jeff kit-ios-toolbox
Zoom Quiet
Velocity2011分享
Velocity2011分享
Zoom Quiet
陈正 Introduction to-sae_python
陈正 Introduction to-sae_python
Zoom Quiet
111218 zhtechparty-panda讲稿
111218 zhtechparty-panda讲稿
Zoom Quiet
111218 zhtechparty-移动互联网产品需求分析
111218 zhtechparty-移动互联网产品需求分析
Zoom Quiet
111218 zhtechparty-zd-浅谈symbian开发
111218 zhtechparty-zd-浅谈symbian开发
Zoom Quiet
ImpoImport this, that, and the other thing: custom importersrt not for_y
ImpoImport this, that, and the other thing: custom importersrt not for_y
Zoom Quiet
Import this, that, and the other thing: custom importers
Import this, that, and the other thing: custom importers
Zoom Quiet
金山卫士界面框架
金山卫士界面框架
Zoom Quiet
111030 gztechparty-小路-云时代的mysql
111030 gztechparty-小路-云时代的mysql
Zoom Quiet
Mehr von Zoom Quiet
(20)
42qu thrift1
42qu thrift1
产品信息收集系统Infoc的演变
产品信息收集系统Infoc的演变
Go courseday3
Go courseday3
Go courseday2
Go courseday2
Go courseday1
Go courseday1
01s0401 go,互联网时代的c语言 许式伟
01s0401 go,互联网时代的c语言 许式伟
Zoz pwned-by-the-owner-表惹程序猿
Zoz pwned-by-the-owner-表惹程序猿
金山云查询系统改进之路1
金山云查询系统改进之路1
Zh120226techparty zd-story
Zh120226techparty zd-story
Zh120226techparty velocity2011-review
Zh120226techparty velocity2011-review
Zh120226techparty jeff kit-ios-toolbox
Zh120226techparty jeff kit-ios-toolbox
Velocity2011分享
Velocity2011分享
陈正 Introduction to-sae_python
陈正 Introduction to-sae_python
111218 zhtechparty-panda讲稿
111218 zhtechparty-panda讲稿
111218 zhtechparty-移动互联网产品需求分析
111218 zhtechparty-移动互联网产品需求分析
111218 zhtechparty-zd-浅谈symbian开发
111218 zhtechparty-zd-浅谈symbian开发
ImpoImport this, that, and the other thing: custom importersrt not for_y
ImpoImport this, that, and the other thing: custom importersrt not for_y
Import this, that, and the other thing: custom importers
Import this, that, and the other thing: custom importers
金山卫士界面框架
金山卫士界面框架
111030 gztechparty-小路-云时代的mysql
111030 gztechparty-小路-云时代的mysql
100305 trac-plugin-dev-intro
1.
Trac 插件开发简介
Trac 的增进方法 金山软件 廖杰 richard.liao.i@gmail.com 1
2.
目录 a.Trac 增进 b.Trac 插件开发 c.Trac
定制系统 2
3.
Trac 增进
3
4.
Trac 简介 • Trac
是什么 – 最轻量级别的基于 Web 的软件项目管理环境 – 背景 : Trac 0.12 dev, 支持 i18n • 干净的 Trac 能做什么 – ticket – wiki – 版本系统 – 邮件提醒 4
5.
为什么要对 Trac 进行增进 •
用户环境需求 • 特殊功能 • 系统间互动 • 修正缺陷 • 应用集成 5
6.
Trac 增进的方法 •
修改配置 , 调整 Trac 参数 • 安装第三方插件 , 扩展 Trac 功能 • 自己开发插件 • 对 Trac 打补丁 6
7.
调整 Trac 的参数 •
基本配置 : – 通过 Admin 界面 – 通过 trac-admin 命令行 • 特殊配置 – 修改 trac.ini – 定制模板文件 7
8.
安装第三方插件 • 插件大本营 –
http://trac-hacks.org – 超过 500 个项目 – 分类 • 插件 • 宏 • 主题 • 脚本 • 补丁 • 应用集成 8
9.
自己开发插件 • 扩展 Trac
某方面的功能 – 插件 –宏 – 主题 – 脚本 9
10.
对 Trac 打补丁 •
Trac 内置功能与需求冲突 • Trac 本身缺陷 • Trac 暂时不实现的功能 10
11.
Trac 插件开发
11
12.
Trac 插件开发环境 •
可运行的 Trac 环境 • Python • Subversion • easy_install • virtualenv( 可选 ) 12
13.
快速插件模板 • http://trac-hacks.org/wiki/TracQuickPluginTemplateScript • 使用
paste.script 模板 • 可即刻部署 13
14.
插件部署 • pyton egg
部署 – setuptools 0.6c9 – python setup.py bdist_egg – cp dist/*.egg ../test/plugins • 部署方式 – 全局 – 本地 14
15.
Trac 插件系统 • Since
Trac 0.9 • Python 语言 • 基于 Trac 组件结构 15
16.
Trac 组件结构 • Trac
core 实现了必须的组件核心 • Trac 的内置的模块都是组件 – wiki – ticket – 版本系统 • 插件与内置模块是同一级别 – 可使用插件替换内置模块 – 可拆卸 16
17.
Trac 组件结构 • ExtensionPoint
– 对外接口 – 其他组件可以扩展此接口 : plugin 17
18.
Trac 组件结构 • 组件
– 提供特定功能的对象 • 组件是 singleton – 用于提供功能 – 不作为实体使用 18
19.
Trac 组件结构 • 每个组件都有内置如下变量
– env: 代表 trac 环境实例 – config: trac 配置 – log: trac 日志 19
20.
Trac 组件结构 • trac.core
20
21.
演示 : HelloWorld
21
22.
调试 • tracd
– tracd -r --port 8000 test • log – self.env.log.debug • 集成 Eclipse+PyDev 调试 22
23.
Trac 插件开发相关 • 模板系统
: genshi • 前端 : jquery • SQL 数据库 : Trac Data Models 23
24.
Trac 定制系统
24
25.
Trac 定制系统 •
基础配置 • 定制字段 • 定制工作流 • 复杂报表 • 选择主题 • 选择已有插件 • 开发定制插件 25
26.
参考 • http://trac.edgewall.org/wiki/TracDev • http://trac-hacks.org/ •
http://trac-hacks.org/wiki/richard 26
Jetzt herunterladen