从布尔字段 odoo 10 创建函数

Create function from a Boolean field odoo 10

我想创建一个函数来检查布尔值是 True 还是 False。如果这个布尔值是 True,我想执行一系列指令。此函数是在与我的布尔字段相同的 class 中创建的。我必须使用函数装饰器吗?

我的class:

class ResPartner_school(models.Model):

    _name = 'ecole.partner.school'
    _order = 'id desc'

    half_pension = fields.Boolean(string='Restauration Scolaire', copy=False)

我的函数:

def synchroHalfPension(self):
    if self.half_pension:
        print "BOOLEAN TRUE"
    else:
        print "BOOLEAN FALSE"

如何简单地验证我的函数是否有效?

我是初学者

谢谢

编辑:我的问题的第一部分已解决,谢谢。现在我注意到一件事,只要我在 Odoo 中激活布尔值,就会显示该消息。我希望 "half_pension is on" 消息仅在我保存表单时出现。我怎样才能做到这一点?亲切地–

真的很简单,你可以用api.onchange

装饰你的方法
@api.onchange('half_pension')
def synchroHalfPension(self):
    if self.half_pension:
        print "half_pension is on"
    else:
        print "half_pension is off"

只要布尔值发生变化,就会调用上述函数。

希望对您有所帮助!