1 关于然之
1.1  关于然之协同办公系统
1.2  然之协同主要功能列表
1.3  如何获得技术支持
1.4  然之协同授权协议
2 安装升级
2.1  使用源码包安装然之协同(各系统通用)
2.2  windows用一键安装包安装(推荐)
2.3  linux用一键安装包
2.4  宝塔面板安装然之
2.5  然之一键安装包里安装禅道和蝉知
2.6  如何升级然之协同系统
2.7  使用云然之在线协同管理服务
2.8  去掉然之访问地址中的ranzhi
2.9  如何备份然之
2.10  安装ioncube扩展
2.11  安装php-zip扩展
3 客户管理(crm)
3.1  客户管理的基本流程
3.2  添加一个产品
3.3  创建一个客户
3.4  开始一个订单
3.5  签署一个合同
3.6  联系人管理
3.7  名单管理
3.8  供应商管理
3.9  设置客户管理的基本信息
3.10  客户管理的基本统计报表
4 日常办公(oa)
4.1  待办管理
4.2  审批管理
4.3  公告管理
4.4  考勤管理
4.5  请假管理
4.6  补班管理
4.7  加班管理
4.8  调休管理
4.9  出差管理
4.10  外出管理
4.11  报销管理
4.12  节假日管理
4.13  设置管理
5 项目管理(proj)
5.1  项目管理流程简介
5.2  创建项目
5.3  创建任务
5.4  任务的各种操作
5.5  任务的三种视图
5.6  项目的各种操作
6 文档管理(doc)
6.1  文档库简介
6.2  创建文档库
6.3  创建文档
7 现金记账(cash)
7.1  为什么做记账管理
7.2  基本信息设置
7.3  添加账号
7.4  账户管理
7.5  记账管理
7.6  批量记账和导入
7.7  对账管理
7.8  现金记账的基本统计报表
8 团队分享(team)
8.1  为什么做团队分享模块?
8.2  维护基础的数据
8.3  团队模块功能介绍
9 后台管理
9.1  后台的基础信息维护
9.2  添加成员和维护部门结构
9.3  分组权限管理
9.4  添加应用和应用权限管理
9.5  如何配置email发信
10 应用导航(ips)
10.1  应用导航功能简介
10.2  禅道集成
11 定制开发
11.1  如何对然之进行定制开发
11.2  然之的目录结构
11.3  如何找到要修改的文件
11.4  数据库结构

如何找到要修改的文件

2016-06-23 16:50:24
易软-纪鲁
6005
最后编辑:易软-纪鲁 于 2016-06-23 17:46:02

要想对然之进行修改,就必须知道对应的代码在什么地方。在了解了然之的目录结构之后,我们来看下然之的请求是如何对应到代码的。

一、control方法的定位

control方法是每一个页面的入口,顺藤摸瓜,让我们先来看个例子: crm/ order-browse- assignedTo.html 或者是crm/index.php?m=order&f=browse&mode=assignedTo。这里面有什么玄机呢?让我们来揭晓。

crm/ order-browse- assignedTo.html,表示是访问 crm应用 order这个模块的 browse方法,传递的第一个参数为 assignedTo,访问的页面类型是 html
同样, crm/index.php?m=order&f=browse&mode=assignedTo, crm代表应用名 ,m代表了模块名称, f代表了方法名称,后面的则是参数列表。
那么我们就可以对应然之的源代码,app/crm/order/control.php中的browse方法:

二、control方法里面的调用

ok,我们现在已经知道了入口的函数在什么地方,我们来跟到里面看看吧。

$this->order, 表示的是调用order模块的model对象,那么它对应的文件在什么地方呢?聪明的你,应该已经猜到了吧。在 app/crm/order/model.php
this->loadmoel('order', 'crm')->xxx,表示加载crm应用order模块的model对象,它对应的文件在app/crm/order/model.php
$this->app->loadClass('pager'),表示加载一个lib类,它对应的文件则在lib/pager/pager.class.php
$this->lang->order->xxx,它的定义在app/crm/order/lang/zh-cn.php。后面的zh-cn根据当前用户的语言而定。

后来看模块文件。$this->display()之后,调用的是view目录下面和当前方法同名的模板文件。比如order的browse方法,它对应的模板文件是app/order/view/browse.html.php


三、应用

然之app目录下的几个目录分别对应CRM、OA、CASH、TEAM应用,sys下是公用模块。




评论列表
说我呢 2018-11-13 09:51:09
如果不需要左侧的所有应用按钮 跟 后台管理>>拓展 这个页面, 是否可以隐藏呢? 应该在那里修改呢?
石洋洋 2018-11-13 10:44:41
可以通过 后台-权限,把相应的应用都关闭掉,没有权限访问就不会显示了。
张修 2018-06-21 15:45:27
用原生php做了一些功能,想和框架整合起来,使用框架的配置文件、调用机制等等。但是有时候会外部调用这个功能,例如外部调用系统这边设置的RESTful API。请问这时候如何绕过框架的登录机制呢
然之-Bee 2018-06-21 18:03:01
http://devel.cnezsoft.com/book/extension/api-auth-44.html 可以看下这一篇手册,看下是否会有帮助。
张修 2018-06-22 10:42:18
谢谢。查询了一下然之目前并没有实现api功能。如果想在然之这边设置一个RESTful API来等待外部系统推送内容进来,是否就只能用原生php独立写好放到www呢?如果能用然之框架实现就最好了
然之-Bee 2018-06-22 18:02:07
可以二次开发试试的。
谢谢谢 2017-12-05 19:01:50
搜索选项怎么找都找不到在哪改
石洋洋 2017-12-06 09:18:09
具体要修改搜索的什么内容?
然之-Bee 2017-12-06 09:18:53
f12,触发下搜索动作,看下具体的链接;根据链接判断代码所在的位置。
1/1
发表评论
叁 加 叁 =
评论通过审核后显示。