Questo sito utilizza cookie per le proprie funzionalità e per inviarti pubblicità e servizi in linea con le tue preferenze. Chiudendo questo banner, scorrendo questa pagina o cliccando qualunque suo elemento acconsenti all’uso dei cookie.

Accedendo al link http://www.odoo-italia.org/index.php/home/cookie-policy puoi leggere in dettaglio le modalità di trattamento dei cookie da parte dell'Associazione Odoo Italia.

Benvenuto, Ospite
Nome utente: Password: Ricordami

ARGOMENTO: Inheritance in view

Inheritance in view 6 Anni 9 Mesi fa #7325

  • Xergio
  • Avatar di Xergio
  • Online
  • Gold Boarder
  • Messaggi: 266
  • Ringraziamenti ricevuti 20
  • Karma: 8
Non funziona con _name != _inherit come scrivono qui doc.openerp.com/v6.0/developer/2_5_Objec.../object_inherit.html
I campi me li crea in ogni caso nella tabella padre
Sergio Corato
efatto.it
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Re:Inheritance in view 6 Anni 9 Mesi fa #7326

  • luca81
  • Avatar di luca81
  • Offline
  • Senior Boarder
  • Messaggi: 64
  • Ringraziamenti ricevuti 1
  • Karma: 1
Come l'hai inizializzato il campo _name e quello _inherit? Puoi postare il codice che hai usato?
Luca Crea
EUROPA s.a.s. — www.europa-ge.com
LinkedIn Profile — http://www.linkedin.com/in/lucacrea/it
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Re:Inheritance in view 6 Anni 9 Mesi fa #7327

  • Xergio
  • Avatar di Xergio
  • Online
  • Gold Boarder
  • Messaggi: 266
  • Ringraziamenti ricevuti 20
  • Karma: 8
from osv import osv, fields

class constructions_tools(osv.osv):
    """
    Constructions utilities
    """
    #_name = 'constructions.tools' //don't work - it's a bug?
    _inherit = 'product.product'
    _columns = {
        'width':fields.float('Width', digits=(16, int(3))),
        'height':fields.float('Height', digits=(16, int(3))),
        'weight':fields.float('Weight', digits=(16, int(3))),
        'length':fields.float('Length', digits=(16, int(3))),
        'image':fields.binary('Image', filters=None),
    }
    
constructions_tools()
Sergio Corato
efatto.it
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Re:Inheritance in view 6 Anni 9 Mesi fa #7328

  • Xergio
  • Avatar di Xergio
  • Online
  • Gold Boarder
  • Messaggi: 266
  • Ringraziamenti ricevuti 20
  • Karma: 8
Sono arrivati allo stesso risultato anche qui:
www.openerp.com/forum/topic32700.html
Sergio Corato
efatto.it
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Re:Inheritance in view 6 Anni 8 Mesi fa #7331

  • angedras
  • Avatar di angedras
  • Offline
  • Platinum Boarder
  • Messaggi: 330
  • Ringraziamenti ricevuti 4
  • Karma: 10
Forse quello che vuoi ottenere lo puoi implementare utilizzando _inherits (lo trovi ad esempio in product_product). In questo caso devi peró fare attenzione all' ereditarietà multipla, ad esempio nel caso della ricerca del nome..

R.
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Re:Inheritance in view 6 Anni 8 Mesi fa #7332

  • luca81
  • Avatar di luca81
  • Offline
  • Senior Boarder
  • Messaggi: 64
  • Ringraziamenti ricevuti 1
  • Karma: 1
@Xergio

Ho appena fatto una prova e mi è successa una cosa ancora più assurda :huh:
Ho creato una classe my_test e subito dopo ho copiato il codice che hai postato... in pratica due cose che facessero la stessa identica operazione.
Per sicurezza, però, ho scelto di ereditare due oggetti differenti: uno copia il 'product.product' e l'altro il 'product.template'.
class my_test(osv.osv):
	_name = 'my.test'
	_inherit = 'product.product'
	_columns = {
			'cig': fields.char('CIG', size=10),
			'cup': fields.char('CUP', size=15),
			'oda': fields.char('ODA', size=35),
			}

class constructions_tools(osv.osv):
	_name = 'constructions.tools'
	_inherit = 'product.template'
	_columns = {
		'width':fields.float('Width', digits=(16, int(3))),
		'height':fields.float('Height', digits=(16, int(3))),
		'weight':fields.float('Weight', digits=(16, int(3))),
		'length':fields.float('Length', digits=(16, int(3))),
		'image':fields.binary('Image', filters=None)
		}

Il primo mi ha dato il tuo stesso errore (ha aggiunto i campi extra nell'oggetto originale).
Il secondo, invece, ha funzionato alla perfezione! :blink:

Magari in OE 6.1 hanno cambiato il modo di effettuare questo tipo di ereditarietà: del tipo, prima si definisce una classe che indichi solo cosa si vuole ereditare e dopo una con tutte le specifiche... anche se lo trovo troppo macchinoso e poco pratico.
O, forse, c'è qualche vincolo relativo al solo 'product.product'.
Luca Crea
EUROPA s.a.s. — www.europa-ge.com
LinkedIn Profile — http://www.linkedin.com/in/lucacrea/it
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.
Tempo creazione pagina: 0.137 secondi

Odoo Italia Associazione - C.F: 94200470485 - Sede: Viale dei Cadorna, 83 - Firenze - Italy

Protected by R Antispam