Pardon,
la modifica a cui sto lavorando è legata alla localizzazione italiana (a breve 
la pubblico) ma effettivamente la domanda che sto facendo è strettamente 
tecnica. Continuo qui perchè almeno si può spostare il thread in blocco.

A classe ir_sequence definita in base
B classe ir_sequence ridefinita in account/sequence.py
C classe ir_sequence ridefinita da me in una cartella addons aggiuntiva

Da quallo che dice Davide (grazie Davide) mi aspetto che accada questo:
C eredita da B che eredita da B


Io però avrei bisogno che accadesse questo
B eredita da C che eredita da A

in questo modo il metodo ir_sequence.get_id() di B
chiama super(ir_sequence, self).get_id()
verrebbe chiamato il mio (C)



________________________________
Da: Davide Corio <[email protected]>
A: [email protected]
Inviato: Lunedì 2 Maggio 2011 16:02
Oggetto: Re: [Openobject-italia-core-devs] questioni sull'ereditarietà

Il 02/05/2011 15:29, Matteo Grolla ha scritto:
> Salve
> avrei bisogno di un chiarimento su come risolvere il seguente problema
> 
> Vorrei fare una modifica al metodo ir_sequence.get_id(...) e fare in
> modo che gli altri moduli che ridefiniscono questo metodo abbiano come
> versione base il mio metodo
> 
> Es. il modulo account ridefinisce la classe ir_sequence
> nel metodo ir_sequence.get_id() del modulo account vorrei che la
> chiamata super(ir_sequence, self).get_id() facesse riferimento al mio metodo

Non esiste un modo preciso per determinare quale modulo eredita per ultimo.
cmq i moduli messi una cartella addons aggiuntiva specificata con addons-path 
sono guardati per ultimi. quindi se crei il tuo modulo che fa l'override li 
dentro sei quasi sicuro che abbia la priorità.
A meno che non ci siano altri addons che fanno lo stesso.

> E' possibile tenere la modifica in un mio modulo senza andare a
> modificare il modulo base?

devi SEMPRE fare le modifiche in un tuo modulo, mai toccare il codice di 
openerp. Altrimenti quando escono gli aggiornamenti perdi tutto.

PS: essendo questa lista nata per lo sviluppo della localizzazione, forse 
conviene spostare queste discussioni sul forum.

Gli altri che ne pensano a riguardo?

-- Davide Corio              [email protected]
Via Alliaudi, 19 - 10064  -  Pinerolo (TO)  -  Italy
Mobile: (+39) 3663221427  -   Fax: (+39) 01214469718
Domsense Srl                http://www.domsense.com

_______________________________________________
Mailing list: https://launchpad.net/~openobject-italia-core-devs
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~openobject-italia-core-devs
More help   : https://help.launchpad.net/ListHelp
_______________________________________________
Mailing list: https://launchpad.net/~openobject-italia-core-devs
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~openobject-italia-core-devs
More help   : https://help.launchpad.net/ListHelp

Rispondere a