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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
38a0d3ca254677c1b7905c779c47185e2bc1cbb75dc570bb7e069f1e8c049b78
|
|
| MD5 |
9e878aa976e794fe40b52c695f81a3eb
|
|
| BLAKE2b-256 |
cd69edd2a650e0bfda3e80c8e25dd5e5c5ff0c464de831f400910663d7174af6
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a881e5f22dc52c73c68088c64ccd12642723831f790890e801a207045c628bf2
|
|
| MD5 |
4450f2e9efc3969c3c6ec19da8e1503b
|
|
| BLAKE2b-256 |
797b9ae09e072de52b4a33fe5582c159b50f867a31fc447352c202cf53d9f429
|