首页
/ Kolibri教育平台v0.18.1-rc0版本技术解析

Kolibri教育平台v0.18.1-rc0版本技术解析

2025-07-09 13:38:25作者:温玫谨Lighthearted

Kolibri是一个开源的离线教育平台解决方案,专为资源受限环境设计。它允许教育工作者在没有稳定互联网连接的地区部署数字学习资源,并提供了完整的学习管理系统功能。本次发布的v0.18.1-rc0版本作为候选发布版,带来了一系列重要的功能改进和问题修复。

核心改进与修复

1. 测验功能优化

本次版本对测验功能进行了两项重要改进:

  • 修复了长期存在的同步问题:当测验被分配给个别学习者或学习小组时,如果这些学习者使用的是仅限学习者的设备,测验内容将无法同步的问题已得到解决
  • 测验章节默认固定问题顺序:根据社区反馈,现在测验章节中的问题默认会保持固定顺序,这有助于维持测验的一致性和可预测性

2. 用户管理增强

版本引入了软删除机制来改进用户管理:

  • 新增了date_deleted字段到FacilityUser模型
  • 实现了SoftDeletedFacilityUserModelManager管理器
  • 重写了get_queryset方法以自动排除已软删除的用户
  • 这些改进使得用户删除操作更加安全,同时保留了历史数据

3. 性能优化

多个性能相关的改进被引入:

  • 限制了作业更新时数据库写入的频率,仅对重要事件进行写入
  • 移除了未使用的Django本地化文件,显著减小了WHL文件大小
  • 优化了统计文件数据的刷新机制

技术细节

前端改进

  • 修复了Mac应用和Safari浏览器中Facility > Class表格的显示问题
  • 解决了RTL(从右到左)语言环境下测验创建界面的布局问题
  • 优化了学习活动筛选器的显示,修复了选项被截断的问题
  • 为Bloom播放器添加了questions url属性
  • 移除了AccessibleResourceCard中过深的KTextTruncator样式

后端增强

  • 使用SQLAlchemy URL.create更好地处理密码中的特殊字符
  • 改进了Windows安装程序的签名工作流程
  • 升级了Mac应用安装程序到最新版本
  • 增加了对HTML文章渲染器插件的初始支持

开发者相关

  • 清理了拖拽组件和课程相关的代码
  • 更新了贡献指南的引用
  • 修复了开发者文档中的损坏链接
  • 移除了不再使用的组件
  • 升级了多个依赖项版本,包括webpack、eslint-config-prettier、katex等

用户体验改进

  • 确保在移动设备竖屏模式下查看练习测验时,"提交测验"按钮可见
  • 修复了LearnerSummaryPage中课程计数不一致的问题
  • 为useBaseSearch添加了scopedLabelsLoading以处理非搜索显示标签获取的加载状态
  • 在Safari和Mac应用中设置min-width: 0修复了标题总是被截断的问题

这个候选版本为Kolibri平台带来了多项重要改进,特别是在测验功能和用户管理方面。这些变化不仅解决了已知问题,还根据用户反馈优化了默认行为,使平台更加稳定和易用。开发团队也持续关注性能优化和代码质量,为未来的功能扩展打下坚实基础。

登录后查看全文
热门项目推荐