summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/fields/relational_fields.js
diff options
context:
space:
mode:
authorAaron Bohy <aab@odoo.com>2017-05-18 09:36:14 +0200
committerAaron Bohy <aab@odoo.com>2017-05-18 13:55:46 +0200
commit94c91374e33f80256398f7ac2f892500aaf7e685 (patch)
treead086e6c0b5bb751021ede9be38b8f3b1f0c03af /addons/web/static/src/js/fields/relational_fields.js
parent3dd97db07fcf22bf1dd7fcaa912a20438483bc7c (diff)
[FIX] web: selection field with value 0
The server doesn't make a distinction between an unset selection field, and a value 0 (integer). So when 0 is a valid key for the field, the server returns false as value if the field is unset, or if its value is 0, which is not really convenient. As a consequence, when the value is 0, it appears as unset in the interface. To circumvent this, we automatically converts false value of selection fields to 0, if 0 is a key of the selection.
Diffstat (limited to 'addons/web/static/src/js/fields/relational_fields.js')
-rw-r--r--addons/web/static/src/js/fields/relational_fields.js8
1 files changed, 7 insertions, 1 deletions
diff --git a/addons/web/static/src/js/fields/relational_fields.js b/addons/web/static/src/js/fields/relational_fields.js
index d65532165e8..7f8cbd2eb45 100644
--- a/addons/web/static/src/js/fields/relational_fields.js
+++ b/addons/web/static/src/js/fields/relational_fields.js
@@ -1671,7 +1671,7 @@ var FieldSelection = AbstractField.extend({
},
//--------------------------------------------------------------------------
- // Private
+ // Public
//--------------------------------------------------------------------------
/**
@@ -1681,6 +1681,12 @@ var FieldSelection = AbstractField.extend({
getFocusableElement: function () {
return this.$el.is('select') ? this.$el : $();
},
+ /**
+ * @override
+ */
+ isSet: function () {
+ return this.value !== false;
+ },
//--------------------------------------------------------------------------
// Private