资讯详情

资讯详情

OpenProject 8.0 版本深度解析:WYSIWYG 编辑器、自定义动作与升级路径全指南

OpenProject 8.0 版本深度解析WYSIWYG 编辑器、自定义动作与升级路径全指南【免费下载链接】openprojectOpenProject is the leading open source project management software for product, project and portfolio management. A powerful Jira alternative with agile planning, issue tracking, roadmaps, Gantt charts, time tracking, collaboration features, and more. Available on premises or in the cloud. ⭐ Star us on GitHub项目地址: https://gitcode.com/GitHub_Trending/op/openprojectOpenProject 8.0 是一次以编辑体验重构和工作流自动化为主题的重大版本更新它用基于 CKEditor 5 的所见即所得WYSIWYGMarkdown 编辑器取代了 Textile 编辑器引入了以自定义动作Custom Actions为核心的智能工作流并用全新的交互甘特图彻底替换了旧版时间线视图。读完本文你将完整掌握 8.0 的各项新特性含企业版附加能力、Textile 到 Markdown 的自动迁移机制以及从 7.x 升级安装到 8.0 的关键注意事项并能在 OpenProject 源码中定位这些特性的对应实现。版本核心变化一览OpenProject 8.0 的官方发布说明docs/release-notes/8/8-0-0/README.md概括了本版本的主线特性说明适用范围WYSIWYG Markdown 编辑器基于 CKEditor 5CommonMark 语法替换原有编辑器全部版本新侧边导航项目内导航增强可整体隐藏侧边栏腾出屏幕空间全部版本嵌入式工作包表格在 Wiki 页面中嵌入工作包视图与甘特图全部版本工作包附件全文搜索按文件名或文件内容检索附件企业版附加组件自定义动作Custom Actions一次点击批量更新多个工作包属性企业版附加组件工作包表格条件格式化按状态/优先级/到期日高亮行企业版附加组件工作包类型子元素组在工作包详情页直接维护子工作包企业版附加组件新设计全新 Logo 与默认配色主题全部版本Angular 6前端框架从 AngularJS 升级为 Angular 6全部版本其中最重要的一条破坏性变更旧时间线视图old timeline view被移除由新的交互式甘特图取代使用旧时间线的嵌入时间线视图同样被移除应改用嵌入式工作包表格替代。官方强烈建议在升级到 8.0 之前先完成时间线报告的迁移。WYSIWYG Markdown 编辑器从 Textile 到 CommonMark8.0 最核心的体验升级是全新的 WYSIWYG 编辑器。其技术要点包括编辑器内核基于 CKEditor 5 构建编辑 Wiki 页面、会议、新闻和工作包时所见即所得不再需要记忆 Textile 语法底层语法格式编辑器背后使用CommonMark——一个围绕 Markdown 格式建立的联合标准添加图片、插入宏、创建表格等操作均只需一次点击存量内容自动迁移升级至 8.0 时所有 Textile 文档会通过pandoc自动转换为新格式无需手动处理。关于迁移机制仓库中的升级文档给出了更明确的实现事实docs/installation-and-operations/operation/upgrading/README.mdOpenProject 8.0 已移除 Textile所有历史内容在 migration 运行期间自动迁移为 GFM Markdown使用的转换工具是 pandoc一个较新版本的 pandoc 会由 OpenProject 自动下载。也就是说转换并非依赖服务器预装环境而是由迁移流程自行拉取 pandoc 完成这降低了自建环境升级的运维门槛。迁移过程在 Rails 迁移脚本中自动执行升级者只需按常规流程运行迁移即可。新侧边导航与嵌入式工作包表格新侧边导航8.0 重构了项目内部的导航方式。新的侧边导航让用户更容易在项目内移动并支持整体隐藏侧边栏以扩大内容区。与之配套工作包视图work package views与 Wiki 页面也获得了更便捷的查找与跳转入口。嵌入式工作包表格从 8.0 开始可以把工作包视图和甘特图直接嵌入 Wiki 页面以及项目概览页例如在 Wiki 中直接展示当前里程碑计划。由于旧时间线视图及其嵌入方式已被移除嵌入式工作包表格实质上成为了旧嵌入时间线的官方替代方案——这也是升级前必须关注的时间线报告迁移的落点。企业版新特性附件全文搜索、自定义动作、条件格式化与子元素组以下四项能力属于 OpenProject 8.0 引入的Enterprise 附加组件工作包附件全文搜索支持按文件名或文件内容从工作包页面检索附件快速定位带有某类附件的工作包。对于文档密集型项目如 BIM、合规文档管理这直接解决文档散落在各个工作包附件中难以查找的痛点。自定义动作Custom Actions自定义动作允许对点击一个按钮后批量更新哪些属性进行建模实现预定义工作流例如一次点击同时更改工作包的经办人assignee、状态和优先级从而节省时间并减少人工改动的错误。仓库源码完整印证了这一特性的实现结构模型层app/models/custom_action.rb 定义了CustomAction模型其中validates :name, length: { maximum: 255, minimum: 1 }约束动作名称长度serialize :actions, coder: CustomActions::Actions::Serializer表明一个自定义动作可序列化保存多个子动作动作注册表app/models/custom_actions/register.rb 集中登记了所有可用动作与条件——可用动作包括AssignedTo、Responsible、Status、Priority、CustomField、Type、Project、Notify、DoneRatio、EstimatedHours、StartDate、DueDate、Date与各子动作对应的实现文件位于 app/models/custom_actions/actions/ 目录如 status.rb、priority.rb 等条件控制CustomAction通过多对多关联挂接四种触发条件——status_conditions状态、role_conditions角色、type_conditions类型、project_conditions项目条件类注册在 app/models/custom_actions/register.rb 的conditions中模型上的conditions_fulfilled?(work_package, user)方法会检查所有条件是否都被当前工作包与用户满足即决定该自定义动作按钮在特定工作包上是否可用/触发。从源码结构看动作 条件的双层设计正是发布说明中选择哪些动作在被点击时触发这一配置能力的底层支撑。条件格式化Conditional Formatting工作包列表页中的行可依据状态或优先级高亮快速识别最需要关注的任务同时到期日也可高亮使即将到期或已逾期的阶段、里程碑与任务一目了然。工作包类型子元素组Subelement Groups可在工作包类型上添加子元素组从而为已有工作包快速创建子工作包它以属性组的形式在工作包详情页呈现一张小型工作包表格可配置显示哪些列、以及显示哪些类型的子工作包。可用性改进、新设计与性能提升可用性改进整体可用性得到改善多个既有模块的功能行为发生变化。特别地工作包页面配置被更新为同样可作用于嵌入式表格此外属性名Responsible被重命名为Accountable与 RACI 模型中的 A 角色对齐这是升级后界面与 API 使用中需要注意的命名变化新设计8.0 更新了 OpenProject Logo 与默认配色主题企业云与企业本地部署用户可自行修改默认配色主题性能改进包含多项性能优化发布说明中特别点名了工作包页面work package page大量缺陷修复8.0 还包含数量可观的 bug 修复官方建议通过其社区站点上按版本 8.0.0 筛选的缺陷列表查看完整清单。技术侧升级Angular 6在技术层面OpenProject 8 的前端从AngularJS升级为Angular 6。这一切换既带来整体性能提升也确保前端技术栈的长期可维护性future-proof。结合仓库当前的 frontend/ 目录结构TypeScript 源码位于 frontend/src/配合 esbuild 与 vitest 工具链可以看出该 Angular 6 基础在后续版本中持续演进。升级安装到 OpenProject 8.0 的关键步骤官方升级指南位于 docs/installation-and-operations/operation/upgrading/README.md其中Upgrade notes for 7.x to 8.x小节专门覆盖本次升级。核心注意事项如下先备份再升级官方强烈建议在升级前对安装进行备份尤其是需要跨多个版本连续升级时OpenProject 支持从 X 大版本直接迁移到 X1但不支持跳过中间大版本直接迁移到 X2对于数据库转储仓库提供了分步迁移脚本辅助逐版本迁移迁移时间线报告旧时间线视图在 8.0 中已被移除升级前务必将基于旧时间线的报告迁移为新的交互式甘特图否则相关视图不可用嵌入的旧时间线视图被移除应改为嵌入式工作包表格Textile 内容自动迁移如前所述运行数据库迁移时系统会自动下载 pandoc 并把全部 Textile 内容转换为 GFM Markdown——这是发生在 migration 阶段的自动行为无需手工转换但建议升级后抽查关键 Wiki 页面与需求描述确认富文本宏、表格、图片转换结果符合预期常规升级命令包安装方式DEB/RPM通过安装新版本包并执行openproject configure完成迁移Docker/Compose 方式按升级指南中对应的 compose 流程操作面向 10.x 之后转储的补充工具对于从更早版本起步、需要跨多版本迁移数据库转储的场景指南还介绍了bin/migrate分步迁移脚本启动临时 PostgreSQL 容器、按需拉取各版本镜像逐版本迁移并注明对于 8 之前的版本转储需先使用 script/migration/ 目录下的预 8.0 迁移脚本作为前置步骤。小结OpenProject 8.0 的价值可以概括为三层编辑体验层CKEditor 5 CommonMark 的 WYSIWYG 编辑器与 pandoc 驱动的 Textile 自动迁移、工作流层自定义动作、条件格式化、子元素组构成的企业版自动化能力其实现可追溯到 app/models/custom_actions/ 的动作 条件注册体系以及导航与展示层新侧边导航、嵌入式工作包表格、交互式甘特图对旧时间线的替代。对于运维者升级 8.0 的两个硬性前置条件是完成时间线报告迁移与理解 Textile→Markdown 的自动转换行为对照 docs/release-notes/8/8-0-0/README.md 与 docs/installation-and-operations/operation/upgrading/README.md 执行即可稳妥完成升级。【免费下载链接】openprojectOpenProject is the leading open source project management software for product, project and portfolio management. A powerful Jira alternative with agile planning, issue tracking, roadmaps, Gantt charts, time tracking, collaboration features, and more. Available on premises or in the cloud. ⭐ Star us on GitHub项目地址: https://gitcode.com/GitHub_Trending/op/openproject创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →