小编Cha*_*mal的帖子

如何显示openerp错误信息

在我的学生模块中,我继承了res.partner.如果合作伙伴是学生,我想限制在合作伙伴视图中修改名称.这是我的电话.

from openerp.osv import osv, fields


class res_partner(osv.Model):
    _inherit = 'res.partner'
    _columns = {
        'name': fields.char('Name', size=250, required=True, select=True),
        'is_student': fields.boolean('Student', readonly=True),
}

def write(self, cr, uid, ids, vals, context=None):

    stud = self.browse(cr, uid, ids, context=context)[0]

    if ('name' in vals) & (stud.is_student is True):
        raise "Cannot Edit"
    else:
        return super(res_partner, self).write(cr, uid, ids, vals, context=context)
Run Code Online (Sandbox Code Playgroud)

它工作,但我想在消息框中显示错误消息.不例外.我怎么能这样做?

python openerp openerp-7 odoo

6
推荐指数
2
解决办法
1万
查看次数

使用域过滤器中的功能

我想在我的模块中加载与讲师id相关的主题ID.我使用api onchange如下.

 @api.onchange('lecturer_id')
 def _onchange_lecturer(self):
     if self.lecturer_id:
         sub_id =[]
         a = []
         lecturer = self.lecturer_id.id
         query = """select op_subject_id from lecturer_subject_rel where op_lecturer_id='%s'""" % lecturer
         self.env.cr.execute(query)
         a = self.env.cr.fetchall()
         d = 0
         for i in a:
             e = i[0]
             sub_id.append(e)
             d += 1
         return [('subject_id', 'in', sub_id)]
     else:
         return None
Run Code Online (Sandbox Code Playgroud)

和我的领域的域名.

<field name="subject_id" domain=_onchange_lecturer />
Run Code Online (Sandbox Code Playgroud)

正确的主题ID列表传递.如何根据这些id列表加载主题....?

python onchange openerp python-2.7 odoo-8

5
推荐指数
1
解决办法
2860
查看次数

标签 统计

openerp ×2

python ×2

odoo ×1

odoo-8 ×1

onchange ×1

openerp-7 ×1

python-2.7 ×1