Skip to content

Commit 56045ef

Browse files
committed
Merge branch 'main' of github.com:devforth/adminforth
2 parents 916eb20 + 6ac729c commit 56045ef

1 file changed

Lines changed: 11 additions & 1 deletion

File tree

adminforth/dataConnectors/baseConnector.ts

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,11 @@ export default class AdminForthBaseConnector implements IAdminForthDataSourceCon
167167
}
168168
const fieldObj = resource.dataSourceColumns.find((col) => col.name == normalizedFilter.field);
169169
if (!fieldObj) {
170+
const resourceColumn = resource.columns.find((col) => col.name == normalizedFilter.field);
171+
if (resourceColumn?.virtual) {
172+
return { ok: true, error: '', normalizedFilters: normalizedFilter };
173+
}
174+
170175
const similar = suggestIfTypo(resource.dataSourceColumns.map((col) => col.name), normalizedFilter.field);
171176

172177
let isPolymorphicTarget = false;
@@ -191,6 +196,11 @@ export default class AdminForthBaseConnector implements IAdminForthDataSourceCon
191196
// ensure rightField exists in resource
192197
const rightFieldObj = resource.dataSourceColumns.find((col) => col.name == normalizedFilter.rightField);
193198
if (!rightFieldObj) {
199+
const rightResourceColumn = resource.columns.find((col) => col.name == normalizedFilter.rightField);
200+
if (rightResourceColumn?.virtual) {
201+
return { ok: true, error: '', normalizedFilters: normalizedFilter };
202+
}
203+
194204
const similar = suggestIfTypo(resource.dataSourceColumns.map((col) => col.name), normalizedFilter.rightField as string);
195205
throw new Error(`Field '${normalizedFilter.rightField}' not found in resource '${resource.resourceId}'. ${similar ? `Did you mean '${similar}'?` : ''}`);
196206
}
@@ -665,4 +675,4 @@ export default class AdminForthBaseConnector implements IAdminForthDataSourceCon
665675
}
666676

667677

668-
}
678+
}

0 commit comments

Comments
 (0)