تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
3 الردود
10128 أدوات العرض

I have problem with my custom widget. when widget starts, it stays on another product. It needs pager refresh to reload with correct parameters. How to reload automatically my widget when I am changing product form view?


openerp.mymodule = function(instance, local) {    
var _t = instance.web._t,
_lt = instance.web._lt;
var QWeb = instance.web.qweb;

instance.web.form.widgets.add('mywidget', 'instance.mymodule.WidgetM');
local.WidgetM = instance.web.form.AbstractField.extend({
start: function() {
this.$el.html(QWeb.render("WidgetTemplate"));                
return this._super();            
}
});
}



Thanks

الصورة الرمزية
إهمال

Hello

Did you manage to solve this problem? I am currently undergoing a similar problem and have been looking for a solution for a while now.

الكاتب أفضل إجابة

Yes I solved this problem:

start: function() {

       this.field_manager.on("load_record", this, function() {

       this._trigger();

});


الصورة الرمزية
إهمال
أفضل إجابة

Hi,

As mentioned in my comment I also had this issue.

I was able to solve it using the accepted answer on this stackoverflow thread:

http://stackoverflow.com/questions/40508070/odoo-how-to-reload-widget-on-every-db-record-form-view


I had a start function, in this function I added the lines mentioned in the stackoverflow thread.

And where the thread says 'put your code here' I called my javascript function. This way my method gets triggered on every form change. Do note that when the pager reloads the method gets called twice.

الصورة الرمزية
إهمال
المنشورات ذات الصلة الردود أدوات العرض النشاط
2
ديسمبر 22
1291
1
فبراير 25
4095
1
أكتوبر 22
10948
0
أغسطس 21
1666
0
يونيو 21
4461