Skip to main content

Flask-Odoo is an extension for Flask that aims to simplify the integration with the Odoo XML-RPC API

Project description

Flask-Odoo

Flask-Odoo is an extension for Flask that aims to simplify the integration with the Odoo XML-RPC External API.

Installing

Install and update using pip:

$ pip install -U Flask-Odoo

Example

Initialize the Flask extension:

from flask import Flask
from flask_odoo import Odoo

app = Flask(__name__)
app.config["ODOO_URL"] = "http://localhost:8069"
app.config["ODOO_DB"] = "odoo"
app.config["ODOO_USERNAME"] = "admin"
app.config["ODOO_PASSWORD"] = "admin"
odoo = Odoo(app)

if you are using a Mac you may need to set unverified ssl context

app.config["USE_UNVERIFIED_SSL_CONTEXT"] = "True"

then fetch the Odoo version information by:

>>> odoo.common.version()
{
    "server_version": "13.0",
    "server_version_info": [13, 0, 0, "final", 0],
    "server_serie": "13.0",
    "protocol_version": 1,
}

or call a method on an Odoo model:

>>> odoo["res.partner"].check_access_rights("read", raise_exception=False)
true

If you prefer to use a higher level interface you can declare models by extending odoo.Model as follows:

class Partner(odoo.Model):
    _name = "res.partner"
    _domain = [["active", "=", True]]

    name = odoo.StringType()

count the number of records:

>>> Partner.search_count([["is_company", "=", True]])
1

search and read records:

>>> Partner.search_read([["is_company", "=", True]])
[<Partner(id=1)>]

read records by id:

>>> partner = Partner.search_by_id(1)
>>> partner.name
'Odoo'

create and update records:

>>> new_partner = Partner()
>>> new_partner.name = "Teamgeek"
>>> new_partner.id is None
True
>>> new_partner.create_or_update()
>>> new_partner.id
2

delete records:

>>> existing_partner = Partner()
>>> existing_partner.id = 2
>>> existing_partner.delete()

The odoo.Model base extends the Schematics Model class, which means that your models inherit all the capabilities of a Schematics model. For convenience the basic Schematics types are accessible directly from the Odoo instance. These types also handle Odoo False values for non-boolean types.

Contributing

Setup your development environment by running:

$ make

this will create a new Python virtualenv, install all necessary dependencies and run the tests.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Flask-Odoo-0.4.2.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

Flask_Odoo-0.4.2-py3-none-any.whl (6.7 kB view details)

Uploaded Python 3

File details

Details for the file Flask-Odoo-0.4.2.tar.gz.

File metadata

  • Download URL: Flask-Odoo-0.4.2.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.6

File hashes

Hashes for Flask-Odoo-0.4.2.tar.gz
Algorithm Hash digest
SHA256 38a0d3ca254677c1b7905c779c47185e2bc1cbb75dc570bb7e069f1e8c049b78
MD5 9e878aa976e794fe40b52c695f81a3eb
BLAKE2b-256 cd69edd2a650e0bfda3e80c8e25dd5e5c5ff0c464de831f400910663d7174af6

See more details on using hashes here.

File details

Details for the file Flask_Odoo-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: Flask_Odoo-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 6.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.6

File hashes

Hashes for Flask_Odoo-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a881e5f22dc52c73c68088c64ccd12642723831f790890e801a207045c628bf2
MD5 4450f2e9efc3969c3c6ec19da8e1503b
BLAKE2b-256 797b9ae09e072de52b4a33fe5582c159b50f867a31fc447352c202cf53d9f429

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page