diff --git a/packages/core/client/src/schema-settings/SchemaSettings.tsx b/packages/core/client/src/schema-settings/SchemaSettings.tsx index 52cb14e579..915a17fad0 100644 --- a/packages/core/client/src/schema-settings/SchemaSettings.tsx +++ b/packages/core/client/src/schema-settings/SchemaSettings.tsx @@ -987,7 +987,9 @@ export const SchemaSettingsLinkageRules = function LinkageRules(props) { const record = useRecord(); const { type: formBlockType } = useFormBlockType(); const category = props?.category ?? LinkageRuleCategory.default; - const elementType = ['Action', 'Action.Link'].includes(fieldSchema['x-component']) ? 'button' : 'field'; + const elementType = + props?.type || + (fieldSchema?.['x-action'] || ['Action', 'Action.Link'].includes(fieldSchema['x-component']) ? 'button' : 'field'); const gridSchema = findGridSchema(fieldSchema) || fieldSchema; const options = useLinkageCollectionFilterOptions(collectionName);