跳转到主要内容

一个实用插件,简化Pydantic和Odoo模型之间的映射

项目描述

Beta License: LGPL-3 OCA/rest-framework Translate me on Weblate Try me on Runbot

此插件提供了一个实用方法,可用于将Odoo记录映射到Pydantic模型

如果您需要使Pydantic模型在运行时可扩展,请查看python包extendable-pydantic和Odoo插件extendable

目录

使用方法

为了支持映射到Odoo模型的Pydantic模型,可以通过将Odoo模型的字段映射到Pydantic模型定义的字段来从任意Odoo模型实例创建Pydantic模型实例。为了简化映射,该插件提供了一个实用类odoo.addons.pydantic.utils.GenericOdooGetter

import pydantic
from odoo.addons.pydantic import utils

class Group(pydantic.BaseModel):
    name: str

    class Config:
        orm_mode = True
        getter_dict = utils.GenericOdooGetter

class UserInfo(pydantic.BaseModel):
    name: str
    groups: List[Group] = pydantic.Field(alias="groups_id")

    class Config:
        orm_mode = True
        getter_dict = utils.GenericOdooGetter

user = self.env.user
user_info = UserInfo.from_orm(user)

请参阅官方Pydantic文档以发现所有可用功能。

已知问题/路线图

路线图和已知问题可以在GitHub上找到。

错误跟踪器

错误在GitHub问题上跟踪。如果遇到问题,请先检查是否已报告此问题。如果您是第一个发现的,请通过提供详细且受欢迎的反馈来帮助我们解决。

请勿直接联系贡献者关于支持或技术问题的帮助。

致谢

作者

  • ACSONE SA/NV

贡献者

维护者

此模块由OCA维护。

Odoo Community Association

OCA,即Odoo社区协会,是一个非营利组织,其使命是支持Odoo功能的协作开发并推广其广泛使用。

当前维护者

lmignon

此模块是GitHub上OCA/rest-framework项目的一部分。

欢迎您贡献。要了解如何贡献,请访问https://odoo-community.org/page/Contribute

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

此版本未提供源代码分发文件。请参阅生成分发存档的教程。

构建分发

odoo14_addon_pydantic-14.0.1.1.2-py3-none-any.whl (23.2 kB 查看哈希)

上传时间 Python 3

支持者