Entradas

Mostrando las entradas etiquetadas como many2many

22. Desarrollando con Odoo (17). ORM de atributos many2many y one2many. Arreglando el módulo hide_menu_partner de Cybrosys

0. Manejar atributos many2many y one2many por ORM Supongamos que tenemos : un registro existente llamado " record " con un atributo llamado " m2m_padre " tipo many2many y otro atributo " o2m_padre" de tipo one3many otro registro existente llamado " related " con su atributo " id " que es que forma parte de las relaciones anterior, y que tiene el atributo " m2m_hijo " many2many que engancha con " m2m_padre " y " m2o_hijo " que engancha con " o2m_padre " Veamos como hacemos las operaciones CRUD 1. Vincular el registro related a la relación many2many record .m2m = [ ( 4 , related .id ) ] 2. Vincular el registro related a la relación one2many La única manera es vincularlo desde el hijo related. related .m2o_hijo = record 3. Desvincular el registro related de la relación many2many record .m2m = [ ( 3 ,  related .id ) ]   4. Desvincular el registro related a la relación one2many La única manera es desv...

7. Desarrollando con Odoo (5). Campos relacionales calculados. Valor por defecto calculado. Funciones lambda

1. Introducción Vamos a añadir 2 modelos nuevos project y history. Vamos amostrar de forma un poco laxa como estan relacionados. Se indica en la parte superior el padre y en la inferior los hijos project |--> sprint      |--> task |--> history      |--> task  Podemos ver que de project cuelgan directamente sprint y history y que task tiene de padres a sprint y history. También, como se indica en el video, vamos a eliminar los campos creation_date ya que por omisión, odoo incluye campos equivalentes. 2. Campo relacionado calculado Many2one Las nuevas reglas del juego son: Solo habrá un sprint abierto por proyecto. El sprint abierto se caracteriza por tener el end_date mayor a la fecha de hoy A la tarea se le asignará un sprint abierto Para poder seleccionar el sprint, priomeramente se seleccionará un history padre, el cual nos apuntará a un proyecto, y como solo hay un único sprint abierto por proyecto, se seleccionará este como padre de la ...