fix saving new sql lab queries (#8351)
* fix saving new sql lab queries * allow freshly saved queries to be updated immediately
This commit is contained in:
parent
04c3d1f58d
commit
b093406536
|
|
@ -35,6 +35,7 @@ import COMMON_ERR_MESSAGES from '../../utils/errorMessages';
|
|||
export const RESET_STATE = 'RESET_STATE';
|
||||
export const ADD_QUERY_EDITOR = 'ADD_QUERY_EDITOR';
|
||||
export const UPDATE_QUERY_EDITOR = 'UPDATE_QUERY_EDITOR';
|
||||
export const QUERY_EDITOR_SAVED = 'QUERY_EDITOR_SAVED';
|
||||
export const CLONE_QUERY_TO_NEW_TAB = 'CLONE_QUERY_TO_NEW_TAB';
|
||||
export const REMOVE_QUERY_EDITOR = 'REMOVE_QUERY_EDITOR';
|
||||
export const MERGE_TABLE = 'MERGE_TABLE';
|
||||
|
|
@ -129,7 +130,14 @@ export function saveQuery(query) {
|
|||
postPayload: convertQueryToServer(query),
|
||||
stringify: false,
|
||||
})
|
||||
.then(() => dispatch(addSuccessToast(t('Your query was saved'))))
|
||||
.then((result) => {
|
||||
dispatch({
|
||||
type: QUERY_EDITOR_SAVED,
|
||||
query,
|
||||
result: convertQueryToClient(result.json.item),
|
||||
});
|
||||
dispatch(addSuccessToast(t('Your query was saved')));
|
||||
})
|
||||
.catch(() => dispatch(addDangerToast(t('Your query could not be saved'))));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -39,6 +39,11 @@ export default function sqlLabReducer(state = {}, action) {
|
|||
const newState = Object.assign({}, state, { tabHistory });
|
||||
return addToArr(newState, 'queryEditors', action.queryEditor);
|
||||
},
|
||||
[actions.QUERY_EDITOR_SAVED]() {
|
||||
const { query, result } = action;
|
||||
const existing = state.queryEditors.find(qe => qe.id === query.id);
|
||||
return alterInArr(state, 'queryEditors', existing, { remoteId: result.remoteId }, 'id');
|
||||
},
|
||||
[actions.UPDATE_QUERY_EDITOR]() {
|
||||
const id = action.alterations.remoteId;
|
||||
const existing = state.queryEditors.find(qe => qe.remoteId === id);
|
||||
|
|
|
|||
|
|
@ -156,17 +156,9 @@ class SavedQueryViewApi(SavedQueryView):
|
|||
"sql",
|
||||
"extra_json",
|
||||
]
|
||||
show_columns = [
|
||||
"id",
|
||||
"label",
|
||||
"db_id",
|
||||
"schema",
|
||||
"description",
|
||||
"sql",
|
||||
"extra_json",
|
||||
]
|
||||
add_columns = show_columns
|
||||
add_columns = ["label", "db_id", "schema", "description", "sql", "extra_json"]
|
||||
edit_columns = add_columns
|
||||
show_columns = add_columns + ["id"]
|
||||
|
||||
@has_access_api
|
||||
@expose("show/<pk>")
|
||||
|
|
|
|||
Loading…
Reference in New Issue