跳转到主要内容

base_rest的Datamodel绑定

项目描述

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

此插件允许您在REST API方法中使用DataModel对象作为参数和/或响应。

目录

使用方法

要使用DataModel实例作为REST服务端点的请求和/或响应,您必须

  • 定义您的DataModel对象;

  • odoo.addons.base_rest.restapi.method装饰器提供所需的信息;

from marshmallow import fields

from odoo.addons.base_rest import restapi
from odoo.addons.component.core import Component
from odoo.addons.datamodel.core import Datamodel

class PingMessage(Datamodel):
    _name = "ping.message"

    message = fields.String(required=True, allow_none=False)


class PingService(Component):
    _inherit = 'base.rest.service'
    _name = 'ping.service'
    _usage = 'ping'
    _collection = 'my_module.services'


    @restapi.method(
        [(["/pong"], "GET")],
        input_param=restapi.Datamodel("ping.message"),
        output_param=restapi.Datamodel("ping.message"),
        auth="public",
    )
    def pong(self, ping_message):
        PingMessage = self.env.datamodels["ping.message"]
        return PingMessage(message = "Received: " + ping_message.message)

错误跟踪器

错误在GitHub Issues上跟踪。如果在那里找不到您的问题,请检查是否已报告。如果您是第一个发现它的,请通过提供详细且受欢迎的反馈来帮助我们消除它。

请不要直接联系贡献者寻求支持或帮助解决技术问题。

鸣谢

作者

  • ACSONE SA/NV

贡献者

维护者

此模块由OCA维护。

Odoo Community Association

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

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

欢迎您贡献力量。有关如何贡献的详细信息,请访问https://odoo-community.org/page/Contribute

项目详情


下载文件

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

源代码分发

本版本没有可用的源代码分发文件。请参阅生成分发存档的教程

构建分发

由以下支持