_columns = {
"name": fields.char(string="Title", size=64, required=True),
"description": fields.text(string="Description"),
- "domaines": fields.many2many("cmmi.description.domaine",
- string="Domaines"),
+ "domaines": fields.one2many("cmmi.projet.domaine",
+ "project_id",
+ string="Domaines"),
"structures": fields.many2many("cmmi.mo.structure",
string="Structures"),
"structures_moe": fields.many2many("cmmi.mo.structure",
"main_structure": fields.many2one("cmmi.mo.structure",
string="Structure principale"),
}
+
+
+class ProjetDomaine(osv.Model):
+
+ _name = "cmmi.projet.domaine"
+
+ def _get_name(self, cr, uid, ids, field_name=None, arg=None, context=None):
+ if isinstance(ids, (int, long)):
+ ids = [ids]
+ #return {i: r.domaine_id.name for i, r in
+ # zip(ids, self.browse(cr, uid, ids, context=context))}
+ return dict([(i, r.domaine_id.name) for i, r in
+ zip(ids, self.browse(cr, uid, ids, context=context))])
+
+ def _set_name(self, cr, uid, _id, name, value, arg=None, context=None):
+ self.write(cr, uid, _id, {name: value}, context)
+
+ _columns = {
+ "name": fields.function(_get_name,
+ type='char',
+ store=True,
+ string="Nom du domaine"),
+ "main": fields.boolean(string="Domaine principal ?"),
+ "project_id": fields.many2one("cmmi.projet",
+ string="Projet"),
+ "domaine_id": fields.many2one("cmmi.description.domaine",
+ string="Domaine"),
+ }