Odoo Tools Rest
Project description
OdooTools OpenAPI
This package is a library and an a plugin for odoo-tools.
When used as a library, it define an orm that helps unwrap json body into python objects and Odoo objects back into JSON.
When used as a command, it will generate an Odoo Module with api models and controllers as defined in an openapi3 spec with custom extensions for Odoo.
The command can be invoked as such:
odootools gen openapi --destination my_module_api --path path_to_spec
odootools gen openapi --destination my_module_api --url url_to_spec
Then the module will be created inside the destination path. It will use the title/description of the api to define the name/summary of the module.
Example API:
openapi: 3.0.0
info:
contact:
email: info@odoo.plus
name: Loïc Faure-Lacroix
url: https://www.odoo.plus
description: ''
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
title: ''
version: '1'
tags:
- name: projects
description: Super projects
components:
schemas:
ApiResult:
description: Api Result
properties:
id:
title: Resource Id
type: integer
type: object
Project:
description: Project
x-model: project.project
properties:
id:
title: ID
type: integer
name:
title: Name
type: string
paths:
/project/{project}:
get:
tags:
- projects
parameters:
- name: project
x-model:
$ref: "#/components/schemas/Project"
in: path
required: true
schema:
type: integer
description: Get a project
operationId: get_project
responses:
200:
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResult'
description: Project
Result controller:
from odootools_openapi.odoo.http import request, route, Controller
from ..api_models.apiresult import ApiResult
class Projects(Controller):
"""
Super projects
"""
@route(
route=["/project/<model('project.project'):project>"],
methods=['GET'],
csrf=False,
type='plainjson',
auth='none',
)
def get_project(self, project):
"""
Get a project
"""
pass
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
odootools-openapi-0.1.0.tar.gz
(15.9 kB
view hashes)
Built Distribution
Close
Hashes for odootools_openapi-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fc4ac26df3da5298ca92434d29a19ad9649fef3233995458e3b091db8a1c79d9 |
|
MD5 | ffa72914a4d44dedfa02e7e66fce3e11 |
|
BLAKE2b-256 | c3036784350721eb2fc92d9fe67340358acdb04f4fe5cf2c6635d494f824e1dd |