k_ry_mobile_form - 科瑞移动端表单优化模块
功能说明
此模块为 Odoo 17 的 form 视图添加移动端优化功能:
- 在手机浏览器中,form 视图 header 的工具按钮栏会悬浮在屏幕底部
- 提供类似正常 APP 的底部按钮栏体验
- 桌面端不受影响,保持原有显示方式
依赖
baseweb
安装
- 将模块放置在 Odoo 的 addons 目录下
- 更新应用列表
- 安装
k_ry_mobile_form模块
技术实现
文件结构
k_ry_mobile_form/
├── __init__.py
├── __manifest__.py
├── README.md
└── static/
└── src/
├── js/
│ └── status_bar_buttons.js # 覆盖 StatusBarButtons 组件模板
├── xml/
│ └── status_bar_buttons.xml # 新的模板定义
└── scss/
└── status_bar_buttons.scss # 移动端底部悬浮栏样式
实现原理
- JavaScript 覆盖:使用
patch方法覆盖StatusBarButtons组件的模板 - 模板替换:提供新的模板,根据
env.isSmall判断显示方式 - 样式隔离:使用媒体查询确保移动端和桌面端样式互不影响
使用说明
安装模块后,无需额外配置。在手机浏览器中打开任何包含 header 的 form 视图时,工具按钮栏会自动显示在底部。
注意事项
- 此模块只影响 form 视图的 header 按钮栏
- 桌面端完全不受影响
- 支持 iOS 设备的底部安全区域(safe area)