fix: Columns not passing properly from SQL Lab to Explore (#20975)

* debugging columns

* Clean up code

* Fix test
This commit is contained in:
Lyndsi Kay Williams 2022-08-04 13:59:50 -05:00 committed by GitHub
parent 755f654cc6
commit d42cf4e4c9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 9 additions and 5 deletions

View File

@ -159,7 +159,7 @@ describe('SavedQuery', () => {
const closeBtn = screen.getByRole('button', { name: /close/i });
const saveDatasetHeader = screen.getByText(/save or overwrite dataset/i);
const saveRadio = screen.getByRole('radio', {
name: /save as new untitled dataset/i,
name: /save as new untitled/i,
});
const saveLabel = screen.getByText(/save as new/i);
const saveTextbox = screen.getByRole('textbox');

View File

@ -26,9 +26,10 @@ import { Form, FormItem } from 'src/components/Form';
import Modal from 'src/components/Modal';
import SaveDatasetActionButton from 'src/SqlLab/components/SaveDatasetActionButton';
import { SaveDatasetModal } from 'src/SqlLab/components/SaveDatasetModal';
import { getDatasourceAsSaveableDataset } from 'src/utils/datasourceUtils';
interface SaveQueryProps {
query: any;
query: QueryPayload;
defaultLabel: string;
onSave: (arg0: QueryPayload) => void;
onUpdate: (arg0: QueryPayload) => void;
@ -177,7 +178,7 @@ export default function SaveQuery({
onHide={() => setShowSaveDatasetModal(false)}
buttonTextOnSave={t('Save & Explore')}
buttonTextOnOverwrite={t('Overwrite & Explore')}
datasource={query}
datasource={getDatasourceAsSaveableDataset(query)}
/>
<Modal
className="save-query-modal"

View File

@ -721,7 +721,10 @@ class SqlEditor extends React.PureComponent {
<div className="rightItems">
<span>
<SaveQuery
query={qe}
query={{
...qe,
columns: this.props.latestQuery?.results?.columns || [],
}}
defaultLabel={qe.name || qe.description}
onSave={this.saveQuery}
onUpdate={this.props.actions.updateSavedQuery}

View File

@ -19,7 +19,7 @@
export const getDatasourceAsSaveableDataset = source => ({
columns: source.columns,
name: source?.datasource_name || source?.name || 'Untitled',
dbId: source.database.id,
dbId: source?.database?.id || source?.dbId,
sql: source?.sql || '',
schema: source?.schema,
});