来自 Odoo 10 一半工作的领域的功能
Function from a field that works half Odoo 10
我注意到一件事,只要我在 Odoo 中激活布尔值,就会显示该消息。我希望 "half_pension is on" 消息仅在我保存表单时出现。我怎样才能做到这一点?
保存按钮自动包含在 Odoo 中
亲切地–
我的class:
class ResPartner_school(models.Model):
_name = 'ecole.partner.school'
_order = 'id desc'
half_pension = fields.Boolean(string='Restauration Scolaire', copy=False)
我的函数:
@api.onchange('half_pension')
def synchroHalfPension(self):
if self.half_pension:
print "half_pension is on"
else:
print "half_pension is off"
感谢您的帮助!
编辑:
@api.multi
def changed_half_pension(self):
for record in self:
if record.half_pension:
print "half_pension is on"
else:
print "half_pension is off"
@api.model
def create(self, vals):
record = super('ecole.partner.school', self).create(vals)
record.changed_half_pension()
return record
@api.multi
def write(self, vals):
result = super('ecole.partner.school', self).write(vals)
self.changed_half_pension()
return result
'ecole.partner.school' 是我目前的 class
无论 print
语句最后是什么,要使用保存按钮调用更改内容,您必须使用 override/extend create()
和 write()
方法你的模特。
class ResPartner_school(models.Model):
@api.multi
def changed_half_pension(self)
for record in self:
if record.half_pension:
print "half_pension is on"
else:
print "half_pension is off"
@api.model
def create(self, vals):
record = super(ResPartner_school, self).create(vals)
record.changed_half_pension()
return record
@api.multi
def write(self, vals):
result = super(ResPartner_school, self).write(vals)
self.changed_half_pension()
return result
onchange
装饰器用于在客户端更改字段时调用装饰方法。然后将通过按钮 "save" 保存更改本身。所以在这种情况下 onchange 行为是错误的决定。
我注意到一件事,只要我在 Odoo 中激活布尔值,就会显示该消息。我希望 "half_pension is on" 消息仅在我保存表单时出现。我怎样才能做到这一点?
保存按钮自动包含在 Odoo 中
亲切地–
我的class:
class ResPartner_school(models.Model):
_name = 'ecole.partner.school'
_order = 'id desc'
half_pension = fields.Boolean(string='Restauration Scolaire', copy=False)
我的函数:
@api.onchange('half_pension')
def synchroHalfPension(self):
if self.half_pension:
print "half_pension is on"
else:
print "half_pension is off"
感谢您的帮助!
编辑:
@api.multi
def changed_half_pension(self):
for record in self:
if record.half_pension:
print "half_pension is on"
else:
print "half_pension is off"
@api.model
def create(self, vals):
record = super('ecole.partner.school', self).create(vals)
record.changed_half_pension()
return record
@api.multi
def write(self, vals):
result = super('ecole.partner.school', self).write(vals)
self.changed_half_pension()
return result
'ecole.partner.school' 是我目前的 class
无论 print
语句最后是什么,要使用保存按钮调用更改内容,您必须使用 override/extend create()
和 write()
方法你的模特。
class ResPartner_school(models.Model):
@api.multi
def changed_half_pension(self)
for record in self:
if record.half_pension:
print "half_pension is on"
else:
print "half_pension is off"
@api.model
def create(self, vals):
record = super(ResPartner_school, self).create(vals)
record.changed_half_pension()
return record
@api.multi
def write(self, vals):
result = super(ResPartner_school, self).write(vals)
self.changed_half_pension()
return result
onchange
装饰器用于在客户端更改字段时调用装饰方法。然后将通过按钮 "save" 保存更改本身。所以在这种情况下 onchange 行为是错误的决定。