Redmine总体结构分析

发表于:2019-1-02 13:14

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:R队长    来源:CSDN

  1. 背景
  对于刚入门学习redmine开发的小白来说了解redmine项目的代码结构能够帮助我们快速掌握各部分的分工与关系,协助定位需要修改代码位置。
  2. 代码结构
  /app 此文件夹下存放着完成redmine工作逻辑的核心代码。 代码按照经典的MVC的方式组织。
  /app/models 模型文件, 每个文件与数据库中的一张表对应, 负责数据的读取和写入以及数据的基本逻辑处理。
  /app/controllers 控制器文件。 将模型和视图连接起来。 页面请求到来后, 由控制器调用模型, 完成数据处理后, 渲染视图文件并呈现给用户。
  /app/views 视图文件。
  /app/helpers helper 为视图文件提供帮助方法。 一些渲染页面中基本的逻辑可以以函数的形式放在helper中, 供views文件使用。
  /config 系统的基本配置文件存放于此。
  /config/configuration.yml 配置系统的邮件发送,字体等信息。
  /config/database.yml 配置数据库的连接信息。
  /config/routes.rb 路由信息。 指明了每个请求的url如何与相应的控制器关联.
  /config/locale # 翻译信息。 Redmine支持多语言, 用户设定不同的语言, 系统就会切换到相应的语言。
  /db 数据库迁移文件存放于此。
  /files redmine的附件存放于此。 备份redmine数据时, 不仅要备份数据库, 还要备份该文件夹。
  /lib redmine系统使用的众多工具包
  /lib/tasks # 此文件夹下存放着redmine的rake文件。 通过这些文件, 我们可以在终端敲入简单的命令,完成复杂的任务。 另外, 我们还可以通过编写rake文件,完成某些任务。
  /log 日志。
  /plugins redmine插件
  /public redmine系统的javascript, css, 图片等文件存放于此
  3. 响应流程
  用户发起HTTP请求。
  系统通过路由规则为请求寻找响应的控制器和具体的action。
  请求被转向相应的控制器和具体的action。
  控制器委托模型获取数据,并完成具体的任务。
  模型查询数据库,获取数据,并返回给控制器。
  控制器用得到的数据渲染视图。
  渲染后的视图,也就是浏览器可识别的代码,被返回至客户端。
  
      上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号