.. _orm_genropy/virtual_columns/aliasColumn: aliasColumn =========== L'aliasColumn permette di inserire all'interno di una table una **colonna di un'altra table in relazione**. I valori non saranno "copiati", ma **verrà utilizzata** a tutti gli effetti la **table originaria**, garantendo l'integrità dei dati, ma allo stesso tempo la colonna sarà equiparabile nell'utilizzo a una colonna "vera" della table di destinazione. .. hint:: L'aliasColumn è particolarmente utile in caso di colonne di tabelle in relazione che vengono utilizzate spesso nelle :ref:`Operazioni di lettura` Per aggiungere un'aliasColumn all'interno di una table:: class Table(object): def config_db(self, pkg): tbl.column('cliente_id',size='22' ,group='_',name_long='!![it]Cliente' ).relation('cliente.id', relation_name='fatture', mode='foreignkey',onDelete='raise') tbl.aliasColumn('clientenome','@cliente_id.ragione_sociale',name_long='Cliente') tbl.aliasColumn('clienteregione', '@cliente_id.@provincia.regione', name_long='Regione Cliente') Si definisce quindi innanzitutto una :ref:`relazione` , dopodiché all'interno dell'aliasColumn si inserisce: - ``clientenome``, ovvero il nome della colonna - ``@cliente_id.ragione_sociale``, ovvero la colonna di questa table in relazione (``cliente_id``) e la colonna della tabella originaria da utilizzare come alias. A questo punto grazie all'utilizzo dell'aliasColumn la :ref:`query` non sarà più:: rel_query = self.db.table('fatt.fattura').query(columns='@cliente_id.ragione_sociale', where='@cliente_id.@provincia.regione = :reg', reg='LOM', limit=5) bensì:: rel_query = tbl_cliente.query(columns='$clientenome', where='$clienteregione = :reg', reg='LOM', limit=5) .. raw:: html
**Parametri:** +------------------------+------+--------------------------------------------------+ | Nome parametro | Tipo | Descrizione | +========================+======+==================================================+ |relation_path |T |Generalmente implicito, permette di indicare il | | | |path della colonna di cui si vuole riflettere i | | | |valori (es: '@fattura_id.cliente_id') | +------------------------+------+--------------------------------------------------+ |static |B | | +------------------------+------+--------------------------------------------------+ .. sectionauthor:: Davide Paci