Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
3 Trả lời
3942 Lượt xem

Hi everyone,

Im trying to override a method that was already overridden in other own model. What happens is that i set a breaking point in my method but it does not in into the method.

The code in the model A:

@api.multi
def action_state_approve(self):
for state in self:
state.state = 'approved'

So in my other Model is where Im trying to override the above method:

class ClassB(models.Model):
_inherit = 'sale.order'

@api.multi
def action_state_approve(self):
super(ClassB, self).action_state_approve()
Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Hi.

Do you have set the inheritted function model in your __openerp__.py file?

You have to declare it in the depends key.

Kind regards.

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

return super(ClassB, self).action_state_approve()

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Dear Osmani

Try to override by using Super Class Like This:

   @api.multi
def action_state_approve(self):
res= super(ClassB,self).action_state_approve()
...........
return res

I hope I helped you ...
Ảnh đại diện
Huỷ bỏ
Bài viết liên quan Trả lời Lượt xem Hoạt động
2
thg 6 15
3821
0
thg 4 24
1857
4
thg 11 23
5948
0
thg 10 23
1720
2
thg 6 23
2243