connector.session.
ConnectorSession
(cr, uid, context=None)[source]¶Bases : object
Conteneur pour les choses transactionnelles d’OpenERP :
env
¶L’Environnement
cr
¶Le curseur d’OpenERP
uid
¶L’ID de l’utilisateur (entier)
pool
¶Le registre des modèles
context
¶Le context actuel d’OpenERP
change_context
(*args, **kwds)[source]¶Context Manager : crée un nouvel Env avec un context mis à jour
Génère un nouvel openerp.api.Environment
utilisé à l’intérieur du context manager, où le context est enrichi avec les arguments. L’environnement original est restauré à la fermeture du context manager.
Le context enrichi est soit le context
fourni, dans lequel les overrides
sont fusionnés, ou le context actuel dans lequel les overrides
sont fusionné, càd
# current context is {'key1': True}
r2 = records.with_context({}, key2=True)
# -> r2._context is {'key2': True}
r2 = records.with_context(key2=True)
# -> r2._context is {'key1': True, 'key2': True}
Avertissement
seuls les recordset lus à l’intérieur du context manager seront attachés à cet environnement. Dans beaucoup de cas, vous préférerez utiliser openerp.models.BaseModel.with_context()
change_user
(*args, **kwds)[source]¶Context Manager : crée un nouvel Env avec l’utilisateur spécifié
Ceci génère un nouvel openerp.api.Environment
utilisé à l’intérieur du context manager, où l’utilisateur est remplacé par celui spécifié. L’environnement original est restaré à la fermeture du context manager.
Avertissement
seuls les recordset lus à l’intérieur du context manager seront attachés à cet environnement. Dans beaucoup de cas, vous préférerez utiliser openerp.models.BaseModel.with_context()
context
cr
is_module_installed
(module_name)[source]¶Indique si un module est installé ou non dans la base de données en cours.
Utilise une convention établie pour les modules connecteurs : pour savoir si un module est installé, il regarde si un modèle (abstrait) avec le nom nom_module.installed
est chargé dans le registre.
pool
search
(model, domain, limit=None, offset=0, order=None)[source]¶Raccourci pour openerp.models.BaseModel.search
uid
connector.session.
ConnectorSessionHandler
(db_name, uid, context=None)[source]¶Bases : object
Permet de créer une nouvelle instance de ConnectorSession
pour une base de données.
db_name
¶Le nom de la base de données sur laquelle on travaille
uid
¶L’ID de l’utilisateur (entier)
context
¶Le context actuel d’OpenERP
Utilisation
session_hdl = ConnectorSessionHandler(db_name, 1)
with session_hdl.session() as session:
# work with session