diff --git a/superset/assets/src/explore/store.js b/superset/assets/src/explore/store.js index f94585b29cf02..32c132fd42a50 100644 --- a/superset/assets/src/explore/store.js +++ b/superset/assets/src/explore/store.js @@ -56,9 +56,8 @@ export function getControlsState(state, form_data) { delete control.mapStateToProps; } - if (control.multi && typeof formData[k] === 'string') { - formData[k] = [formData[k]]; - } + formData[k] = (control.multi && formData[k] && !Array.isArray(formData[k])) ? [formData[k]] + : formData[k]; // If the value is not valid anymore based on choices, clear it if (control.type === 'SelectControl' && control.choices && k !== 'datasource' && formData[k]) {