İçereği Atla
Menü
Bu soru işaretlendi
2 Cevaplar
3784 Görünümler

Hello everybody,

i have two modules which override the get_pdf method. My question is now, is it possible to make a rule which one of the overriden methodes is called first. The get_pdf of the first module should always be called first.

Is there a way to achieve that goal?


Greets Flo

Avatar
Vazgeç
Üretici En İyi Yanıt

That does not help me further.

Normaly the two modules run on their own. So they can't depend each other. But if you have the special case to use both modules on the same odoo instance modul A's get_pdf should always be called befor the one of modul B.

I figured out that normaly odoo takes the modules how they have been installed. So if module A is installed first, every thing is fine. But the otherway it isn't.

Is there any kind of parameter which can be set to handle this?


Greets Flo

Avatar
Vazgeç
En İyi Yanıt

at code level you can do:

lass MyClass(models.Model):
...
    def get_pdf(self,...):
# here you can do stuff before call overriden method of parent
res = super(MyClass,self).get_pdf(...) # OR do stuff after calling method of superclass... #function of parent class called, in res you've result, do your stuff here... return res.
at module level, you've to arrange dependencies in __openerp__.py files,

module_a (first module) depends: ['whatever']

module_b (second one) depends: ['module_a']


note: do not add in dependency list in module_b modules that are listed already in dependency list of module_a and so on.

Avatar
Vazgeç
İlgili Gönderiler Cevaplar Görünümler Aktivite
3
Tem 18
3896
0
Haz 25
805
1
Eyl 15
3530
1
Nis 16
3548
0
Nis 24
1836