Descrizione

PyOdoo è una libreria Python per realizzare una API comune per interagire con i server Odoo al fine di operare utilizzando le API XML RPC per cercare, ottenere, creare, aggiornare, eliminare dati dai modelli di Odoo e anche di eseguire metodi nei modelli.

Utilizzo da codice Python

import os
import pprint
from pyodoo import CompareType, Filter
from pyodoo.v12 import Model

# Instance model object for Contacts
model = Model(model_name='res.partner',
              endpoint='https://my.odoo.muflone.com/',
              database='odoo_db',
              username='myuser',
              password='mypassword',
              language=None,
              authenticate=True)
# Get some records by partner name
results = model.filter(filters=[Filter(field='name',
                                       compare_type=CompareType.CONTAINS,
                                       value='Muflone')],
                       fields=('id', 'name', 'country_id'),
                       limit=2)
pprint.pprint(results)

Il codice precedente stabilirà una connessione con l’istanza Odoo indicata utilizzando le credenziali fornite, e quindi otterà un massimo di 2 contatti aventi il nome Muflone, estraendo soltanto i campi id, name e country_id e stamperà i risultati:

[{'country_id': [110, 'Italia'], 'id': 312819, 'name': 'Muflone Ovinis'},
 {'country_id': [110, 'Italia'], 'id': 312818, 'name': 'Muflone Clone'}]

Gli oggetti Model hanno numerosi metodi con cui lavorare, alcuni dei quali useranno una lista di oggetti Filter mentre altri potrebbero usare uno o più identificatori di entità (il numero ID del record).

Per maggiori informazioni fare riferimento alla pagina Documentazione e per alcuni esempi di utilizzo vedi la pagina Esempi.

Installazione

I rilasci delle versioni stabili con codice sorgente e pacchetti precompilati sono presenti nella pagina Scarica. Per informazioni sull'installazione da pacchetti o con codice sorgente fare riferimento alla pagina Installazione.

Il codice sorgente di PyOdoo è disponibile su GitHub con la versione attualmente in sviluppo.

Licenza

PyOdoo viene distribuito sotto forma di codice sorgente aperto disponibile su GitHub sotto licenza GNU GPL-3+ (GNU General Public License versione 3 o superiore). Il software viene fornito così com'è e non è offerto alcun tipo di garanzia. Chiunque può derivare il progetto, modificarlo e distribuirlo purchè il nuovo progetto derivato sia rilasciato sotto la stessa licenza GNU GPL-3+.