Buongiorno
Visto che non ne stavo uscendo vivo da questa situazione ho deciso di andarmi a rileggere il modulo idea e.... sorpresa sorpresa! anche un modulo perfettamente funzionante ha
la mia stessa situazione , prendiamo le 2 classi in questione:
class idea_idea(osv.osv):
_name='idea.idea'
_rec_name='name'
...
...
...
_columns= {
...
...
'vote_ids':fields.one2many('idea.vote','idea_id','Vote'),
...
...
...
}
idea_idea()
class idea_vote(osv.osv):
_name='idea.vote'
_description='Idea vote'
_rec_name='score'
_columns={
...
...
'idea_id': fields.many2one('idea.idea','Idea',readonly="True",ondelete='cascade'),
...
...
}
...
...
idea_vote()
ecco... con questa situazione da PgAdmin(o anche dbVisualizer) nella tabella idea.vote COMPARE il campo 'idea_id' ed è visibile la relazione con la tabella idea.idea.
Mentre nella tabella idea.idea NON COMPARE il campo 'vote_ids' e non è visibile la relazione con idea.vote...
Poi leggendo sul memento per esempio, parlando dei relational fields, parla del
many2one come: "Relationship towards a parent object"
mentre parla del
one2many come: "VIRTUAL relationship towards multiple objects"...
non è che questo VIRTUAL significa proprio questo? che è un collegamento "logico" per favorire la programmazione e la leggibilità del codice più che un collegamento reale?