0
我想瀏覽many2many場,但得到這個錯誤:如何瀏覽一個多對多字段創建方法的OpenERP
File "C:\Program Files (x86)\OpenERP 7.0\Server\server\openerp\addons\schoolem\schoolem_dispense_cours.py", line 39, in create AttributeError: '**browse_record_list' object has no attribute
heure_cours_dispense_id
這是代碼:
class schoolem_dispense_cours(osv.Model):
_name = 'schoolem.dispense_cours'
_columns = {
'name' : fields.char('Code',required=True,help="Champ automatique"),
'cours_id' : fields.many2one('schoolem.cours','Nom du Cour',required=True),
'aca_id' : fields.many2one('schoolem.aca','Annee Academique',required=True),
'enseignant_id' : fields.many2one('res.users','Enseignant',required=True),
'salle_de_classe_id' : fields.many2one('schoolem.salle_de_classe','Salle de classe',required=True),
'heure_cours_id' : fields.many2many('schoolem.heure_cours_dispense','schoolem_dispense_cours_heure_cours_dispense','dispense_cours_id','heure_cours_dispense_id','Heures de cour'),
#'heure_cours_id' : fields.many2many('schoolem.heure_cours_dispense',required=True),
}
def create(self, cr, uid, vals, context=None):
if not vals['heure_cours_id'][0][2]:
raise osv.except_osv(('Erreur!'), ('Une Programmation doit avoir au moins une heure de cours!'))
ids = self.search(cr,uid,[('aca_id','=',vals['aca_id'])])
created_hc = []
if ids :
for id in ids :
obj_disp_crs = self.pool.get('schoolem.dispense_cours').browse(cr,uid,id)
created_hc.append(obj_disp_crs.heure_cours_id.heure_cours_dispense_id)
得到這個錯誤:AttributeError的: 「字段 'heure_cours_dispense_id' 中不存在對象 'browse_record(schoolem.heure_cours_dispense,1)'」 – levolutionniste
'created_hc.extend([x.id用於obj_disp_crs.heure_cours_id X])'作品因爲現場_heure_cours_dispense_id_是聲明在many2many創造而不是在課堂上引用(schoolem.heure_cours_dispense),而** ** ID始終定義 – levolutionniste
好吧....我想heure_cours_dispense_id是相關many2many對象的一些領域。如果你想要這個id,那麼created_hc.extend([obj_disp_crs.heure_cours_id]中的[x.id for x))會工作... –