Publicidad

miércoles, 8 de enero de 2014

Parámetros comunes a la mayoría de métodos ORM en Odoo (OPENERP)



La mayoría de métodos ORM tiene una serie de parámetros comunes a todos ellos:

  •cr: Cursor de la base de datos
  •uid: Identificador del usuario actual
  •ids: Lista de enteros con los identificadores de los registros (o lista con un único entero cuando hay       sólo un id)
  •context: Diccionario con los argumentos de contexto, como idioma, zona horaria, ...

    Al definir nuestros modelos como herencia de la clase osv.osv permite que todos los métodos de ORM estén disponibles para la programación de los módulos. Estos métodos pueden ser invocados por los propios objetos, dentro de la clase Python, o desde fuera de la clase, obteniendo en primer lugar una instancia a través del concentrador (pooler) del sistema de ORM.

Contexto de los métodos ORM


    En OpenObject, el contexto tiene datos muy importantes, como el idioma en que se debe escribir un documento, si el campo de una función necesita actualizarse o no, ...

    Cuando se efectúa una llamada a un método ORM, es probable que el objeto ya tenga un contexto y el OpenObject lo proporcione como un parámetro en casi todos los métodos. Si el objeto tiene un contexto, es muy importante que siempre se pase el mismo a todos los métodos a los que se llame.

    Esta regla también es aplicable a los métodos ORM que escriba un programador. El programador debe esperar recibir un contexto como parámetro en todos los métodos que desee llamar, y siempre debe pasar el contexto a todos los métodos a los que llame.


3 comentarios: