zentaoPHP二次开发简介

2014-09-02 13:26:49
王春生
57981
最后编辑:潘仙芝 于 2015-01-09 13:59:14
简介:每一个应用都会涉及到扩展方面的问题、和外面系统集成的问题。zentaoPHP框架也在这几个方面做了充分的工作,方便大家通过二次开发来满足这些需求。总体来讲,zentaoPHP框架提供了扩展机制、API集成和命令行调用机制工三种方式来满足大家的需求。

每一个应用都会涉及到扩展方面的问题、和外面系统集成的问题。zentaoPHP框架也在这几个方面做了充分的工作,方便大家通过二次开发来满足这些需求。总体来讲,zentaoPHP框架提供了扩展机制、API集成和命令行调用机制工三种方式来满足大家的需求。


扩展 机制:可以使用PHP、HTML、CSS或者JS代码来对现有的代码功能进行改动,或者新增功能。

API 接口:可以通过http方式调用使用zentaoPHP框架开发的应用,和其他系统进行集成。

命令行:可以通过命令行调用应用内部的方法,可以用来做备份、更新、发信等操作。

评论列表
蜡笔小君 2018-09-20 11:26:37
请问这个需求ID的生成规则想改可以的吗
王春生 2018-09-21 08:46:14
你可以自己改。
李蛋 2018-09-15 18:08:09
model 不等于怎么写
王春生 2018-09-17 10:35:14
ne, not equal
而鹿 2018-08-06 10:32:33
老师你好,我想要在请假审批模块里添加一个超过3天以上直接由老板进行审批,这里需要怎么样修改内部文件?
王春生 2018-08-07 13:47:25
建议先搞清楚我们的代码结构。
Polly 2018-07-31 08:51:32
二次开发后,怎样进行版本升级?
王春生 2018-07-31 10:44:54
用扩展机制来做二次开发。这样升级的话,你们做的修改不会被覆盖。最多是代码不兼容,调整下就好了。避免手工做代码的比对和合并。
可乐 2018-07-03 11:43:41
使用python可以进行二次开发吗
王春生 2018-07-05 08:06:40
可以通过接口来做开发。
Leo 2018-05-23 16:38:54
请教一下,在lampp+源代码环境下调试正常的插件,在禅道一键安装包环境下安装后无效,调用我开发的passlogin方法时,提示ERROR: the module user has no passlogin method in /opt/zbox/app/zentao/framework/base/router.class.php on line 1636, last called by /opt/zbox/app/zentao/www/index.php on line 67 through function loadModule.
确认过ext里是有相应的文件的,这个会是因为什么原因?谢谢。
王春生 2018-05-25 10:42:46
检查大小写的问题。
hey 2018-05-03 16:48:28
$browsepayc1order1=$this->dao->select('DISTINCT(des1.account),des1.alipay,des1.phone,c1.state')->from(TABLE_USERDES)->alias('des1')
->leftJoin(TABLE_ORDERC1)->alias('c1')->on("des1.account=c1.cloudWorker")
->where('c1.state')->eq('unpaid')
->andWhere('des1.account')->Notin($this->dao->select('des2.account,c2.state')->from(TABLE_USERDES)->alias('des2')->leftJoin(TABLE_ORDERC1)->alias('c2')->on("des2.account=c2.cloudWorker")->where('c2.state')->eq('paid'))
->where('c2.state')->eq('paid')->fetchAll())
->fetchAll();


春哥怎么 notin 在这框架里面查询出来的数据和在数据库里面查询的数据不一样
ss 2018-03-28 20:14:51
嗨,春哥,你好,我想问下,数据库查询的一个问题,禅道代码如下,不明白的地方是:t1.build有的值是“trunk”而不是t2.id,为什么也可以查出来,期待得到您的回复,谢谢。
public function getProjectTasks($projectID, $orderBy = 'id_desc', $pager = null)
{
return $this->dao->select('t1.*, t2.name AS buildName')
->from(TABLE_TESTTASK)->alias('t1')
->leftJoin(TABLE_BUILD)->alias('t2')->on('t1.build = t2.id')
->where('t1.project')->eq((int)$projectID)
->andWhere('t1.deleted')->eq(0)
->orderBy($orderBy)
->page($pager)
->fetchAll('id');
}
2017-12-01 10:28:16
在禅道做二次开发 ,从哪里开始
王春生 2017-12-03 14:27:18
先了解我们的框架结构,和扩展机制。可以参考我们开发的一些插件。
Mr.Yuan 2017-11-07 11:14:16
想知道复选框的值是如何传过去的,为什么我套过来后台cookie中没有呢。
王春生 2017-11-14 14:17:29
放在表单里面,加上name属性。
1/2
发表评论
评论通过审核后显示。