Ensure all values are set before resolving default_get

issue5681
review26471002
This commit is contained in:
Sergi Almacellas Abellana committed 2016-07-08 09:23:48 +02:00
1 parent 0824de014a
commit 9b25b0d347
1 file changed
+9 -8
+9 -8
View File
@@ -775,6 +775,14 @@
default_get: function() {
var dfd = jQuery.Deferred();
var promises = [];
// Ensure promisses is filled before default_get is resolved
for (var fname in this.model.fields) {
var field = this.model.fields[fname];
if (field.description.autocomplete &&
field.description.autocomplete.length > 0) {
promises.push(this.do_autocomplete(fname));
}
}
if (!jQuery.isEmptyObject(this.model.fields)) {
var prm = this.model.execute('default_get',
[Object.keys(this.model.fields)], this.get_context());
@@ -793,19 +801,12 @@
this.group.parent.id;
}
}
this.set_default(values);
promises.push(this.set_default(values));
jQuery.when.apply(jQuery, promises).then(function() {
dfd.resolve(values);
});
}.bind(this));
}
for (var fname in this.model.fields) {
var field = this.model.fields[fname];
if (field.description.autocomplete &&
field.description.autocomplete.length > 0) {
promises.push(this.do_autocomplete(fname));
}
}
return dfd;
},
set_default: function(values, validate) {