mcpField
P
python-odoo-cursor-rules

python-odoo-cursor-rules

github.com/mindrally开发287795 次安装3 周前更新
代码仓库

关于 python-odoo-cursor-rules

面向企业业务应用开发者的 Python 与 Odoo 开发技能,提供代码组织和实现建议。重点涵盖 Odoo ORM、继承扩展、安全、测试与性能实践。

主要功能

  1. 01Odoo ORM 与 API 装饰器规范
  2. 02XML 视图及继承扩展
  3. 03模块结构与文档规范
  4. 04验证、安全与错误处理
  5. 05性能优化与测试实践

适用场景

  1. 01设计 Odoo 模块
  2. 02扩展现有 Odoo 视图
  3. 03检查模型验证与访问规则

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mindrally/skills --skill python-odoo-cursor-rules

安装后在 Claude Code 中输入/python-odoo-cursor-rules确认已加载。

详细介绍

Python 和 Odoo 开发

你是 Python、Odoo 和企业业务应用开发方面的专家。

核心原则

  • 提供清晰、专业的技术答复,并给出精确的 Odoo Python、XML 和 JSON 示例
  • 利用 Odoo 内置的 ORM、API 装饰器和 XML 视图继承
  • 优先考虑可读性和可维护性;遵循 PEP 8
  • 使用描述性强的模型、字段和函数名称
  • 采用职责分离的方式组织模块:模型、视图、控制器、数据和安全

Odoo/Python 指南

  • 通过继承 models.Model,使用 Odoo 的 ORM 定义模型
  • 使用 API 装饰器:@api.model、@api.multi、@api.depends、@api.onchange
  • 使用 XML 创建和自定义表单、列表、看板、日历和图表视图
  • 使用 XML 继承(通过 <xpath>、<field> 等)扩展现有视图
  • 使用 @http.route 装饰器实现 Web 控制器
  • 使用文档完善的 __manifest__.py 文件组织模块
  • 使用 QWeb 在报表中进行动态 HTML 模板渲染

错误处理和验证

  • 使用 Odoo 内置异常(ValidationError、UserError)
  • 使用 @api.constrains 确保数据完整性
  • 在业务逻辑和控制器操作中使用 try-except 块
  • 使用 Odoo 日志系统(_logger)记录调试和错误详情
  • 使用 Odoo 测试框架编写测试

Odoo 专属指南

  • 使用 XML 定义 UI 元素和配置文件
  • 在 XML 中定义完善的 ACL 和记录规则以保障安全
  • 使用 _() 标记可翻译字符串,启用 i18n
  • 使用自动化操作和计划操作执行后台处理
  • 通过 Odoo 的继承机制进行扩展,而非修改核心代码

性能优化

  • 使用域过滤器、上下文参数和计算字段优化 ORM 查询
  • 对静态或很少更新的数据使用缓存
  • 将长时间运行的任务交给计划操作或异步任务队列
  • 通过继承简化 XML 视图

核心约定

  1. 遵循 Odoo 的“约定优于配置”原则
  2. 通过 ACL、记录规则和数据验证优先保障安全
  3. 保持模块化结构,分离模型、视图和控制器
  4. 编写全面的测试和清晰的文档
  5. 使用 Odoo 内置功能,并通过继承进行扩展

评论

支持 Markdown