Saltar la navegación

Vistas tree

Listas

Una vista tree o árbol es una interfaz que se utiliza cuando queremos mostrar un conjunto de registros en modo lista y es utilizar para mostrar varios registros a la vez y para realizar búsquedas sobre ellos.

Para especificar el tipo de vista que deseamos implementar se define el campo arch de tipo xml y con el siguiente tag establecemos si la vista es de tipo tree, form, etc. Todos las tags permitirán personalizaciones mediante atributos; color, estilo... Buscaremos cada caso concreto en la referencia de Odoo. Dentro de una vista, utilizaremos el tag

<field name="" /> 

para especificar qué campos mostrar.

En el siguiente ejemplo definimos varios elementos para el modelo discografica.disco. Notar los colores usados para enlazar elementos relacionados.

<odoo>
<data>
<record model="ir.actions.act_window" id="disco_list_action">
  <field name="name">Discos </field>
  <field name="res_model">discografica.disco</field>
  <field name="view_mode">tree,form</field>
</record>

<record model="ir.ui.view" id="disco_tree_view">
  <field name="name">disco.tree</field>
  <field name="model">discografica.disco</field>
  <field name="arch" type="xml">
    <tree string="Listado de discos">
      <field name="name" />
      <field name="year" />
      <field name="genre" />
      <field name="artist" />
    </tree>
  </field>
</record>

<menuitem id="top_discografica_menu" name='Discográfica' />
<menuitem id="left_discografica_menu" name='Discográfica' parent="top_discografica_menu" />
<menuitem id="discos_menu" name="Discos" parent="left_discografica_menu" action="disco_list_action" />
</data>

</odoo>

Alexandre Ibáñez López. Vistas tree (CC BY-NC-SA)

Tarea

Duración:
00:45
Agrupamiento:
1

Hasta este punto no hemos podido ver visualmente nuestro módulo en funcionamiento. Para poder trabajar con nuestro módulo, debemos crear unos menús para acceder a los modelos definidos en las tareas anteriores así como establecer el acceso a los modelos en el fichero ir.model.access.csv. Debería quedar definido de una manera parecida a la siguiente:

id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink

citas_citas_acl,citas_citas_name,model_citas_citas,base.group_user,1,1,1,1
citas_servicios_acl,citas_servicios_name,model_citas_servicios,base.group_user,1,1,1,1

Además de crear los menús y definir el acceso a los modelos, vamos a definir nuestra primera vista tree. En esta ocasión será una vista básica, por lo que únicamente definimos definir el record con todos los campos del modelo.

Creado con eXeLearning (Ventana nueva)