Python 创建函数OpenERP6.0

Python 创建函数OpenERP6.0,python,openerp,odoo,openerp-6,Python,Openerp,Odoo,Openerp 6,我在openerp 6.0中创建了一个模块,问题是openerp 6.0不支持与openerp 7相同的代码,这是函数create:如果有人可以帮助我解决问题: def create(self, cr, uid, vals, context=None): if context is None: context = {} if vals['teacher_id']: teacher=self.pool.get("res.partner").brows

我在openerp 6.0中创建了一个模块,问题是openerp 6.0不支持与openerp 7相同的代码,这是函数create:如果有人可以帮助我解决问题:

def create(self, cr, uid, vals, context=None):
    if context is None:
        context = {}
    if vals['teacher_id']:
        teacher=self.pool.get("res.partner").browse(cr,uid,vals['teacher_id'],context)
        teacher.attendee=True
    if vals['etudiant_ids'][0][2]:
        for etudiant in self.pool.get("res.partner").browse(cr,uid,vals['etudiant_ids'][0][2],context):
            etudiant.attendee=True
    return super(attendee, self).create(cr, uid, vals, context=context)
问题出现在“if vals['etudiant_id'][0][2]:”


当您访问一个未找到其密钥的字典时,会出现上述错误。 更好的调试方法是使用print语句检查值 打印VAL['etudiant\u id'], 打印VAL['etudiant_id'][0], 打印VAL['etudiant_id'][0][2], 您可以知道密钥不在哪里获取


并尽量避免含糊不清的语句,在使用字典时使用vals.get('etudiant_id'),如果找不到键,它将返回False,而不是error。

请使用代码块和适当的缩进,特别是因为缩进在python中是语法相关的。我试着修好了,请检查一下是否正确。
if vals['etudiant_ids'][0][2]:
TypeError: 'bool' object has no attribute '__getitem__'