FastAPI 是基于 Python 构建的高性能 web 框架,使用简单,易于上手,以下给出一个简单的使用示例:

1
2
3
4
5
6
7
8
9
10
11
from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def read_root():
    return {"Hello": "World"}

@app.get("/items/{item_id}")
def read_item(item_id: int, q: str = None):
    return {"item_id": item_id, "q": q}

这里介绍下笔者自己在odoo中接入 FastAPI 的方式,主要用到了两个插件 Odoo FastAPIOdoo rest API 如下图所示:

以下是 odoo FastAPI 中的2个插件和 odoo rest API 中的1个插件:

安装以上3个插件之前,需要首先需要安装fastapi的python依赖,如下所示:

1
2
3
4
5
6
7
8
9
 "external_dependencies": {
        "python": [
            "fastapi",
            "python-multipart",
            "ujson",
            "a2wsgi",
            "parse-accept-language",
        ]
    }

接下来依次安装 Endpoint route handler、Odoo FastAPI、Odoo rest API,前两者安装之后,就可以看到FastAPI的配置菜单。我们新建一条数据,之后点击右上角的 Sync Registry 按钮。

要使接口说明文档可以正常预览,则需要安装第三个插件 Odoo rest API,安装完成后,便可以查看接口说明文档,如下图所示:

之后就可以根据自身需求,参考Odoo FastAPI的说明文档和示例代码,构建自身的API服务!

作者 菜园君