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