mirror of
https://gitee.com/nocobase/nocobase.git
synced 2024-12-03 04:38:15 +08:00
feat: supports filling in the collection name and field name
This commit is contained in:
parent
58d89068af
commit
4b586148b1
@ -46,8 +46,6 @@ const useResource = () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const useCollectionsResource = () => {
|
const useCollectionsResource = () => {
|
||||||
const descriptionsContext = useContext(DescriptionsContext);
|
|
||||||
console.log('descriptionsContext.service', descriptionsContext.service);
|
|
||||||
const resource = useResourceRequest('collections');
|
const resource = useResourceRequest('collections');
|
||||||
return {
|
return {
|
||||||
resource,
|
resource,
|
||||||
@ -335,6 +333,15 @@ function FieldConfigTitle() {
|
|||||||
return <>{`配置「${ctx.record.title}」表字段`}</>;
|
return <>{`配置「${ctx.record.title}」表字段`}</>;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function useCollectionResource({ onSuccess }) {
|
||||||
|
const visible = useContext(VisibleContext);
|
||||||
|
const resource = useResourceRequest('collections');
|
||||||
|
useEffect(() => {
|
||||||
|
visible && onSuccess({ name: `t_${uid()}` });
|
||||||
|
}, [visible]);
|
||||||
|
return { resource };
|
||||||
|
}
|
||||||
|
|
||||||
const schema: ISchema = {
|
const schema: ISchema = {
|
||||||
type: 'void',
|
type: 'void',
|
||||||
name: 'action',
|
name: 'action',
|
||||||
@ -409,6 +416,9 @@ const schema: ISchema = {
|
|||||||
type: 'void',
|
type: 'void',
|
||||||
title: '创建数据表',
|
title: '创建数据表',
|
||||||
'x-decorator': 'Form',
|
'x-decorator': 'Form',
|
||||||
|
'x-decorator-props': {
|
||||||
|
useResource: useCollectionResource,
|
||||||
|
},
|
||||||
'x-component': 'Action.Drawer',
|
'x-component': 'Action.Drawer',
|
||||||
'x-component-props': {
|
'x-component-props': {
|
||||||
useOkAction: '{{ Table.useTableCreateAction }}',
|
useOkAction: '{{ Table.useTableCreateAction }}',
|
||||||
@ -420,6 +430,14 @@ const schema: ISchema = {
|
|||||||
'x-component': 'Input',
|
'x-component': 'Input',
|
||||||
'x-decorator': 'FormilyFormItem',
|
'x-decorator': 'FormilyFormItem',
|
||||||
},
|
},
|
||||||
|
name: {
|
||||||
|
type: 'string',
|
||||||
|
title: '数据表标识',
|
||||||
|
'x-component': 'Input',
|
||||||
|
'x-decorator': 'FormilyFormItem',
|
||||||
|
description:
|
||||||
|
'随机生成,可修改。支持英文、数字和下划线,必须以英文字母开头',
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -581,10 +599,10 @@ function CreateFieldButton() {
|
|||||||
console.log('click', info.key);
|
console.log('click', info.key);
|
||||||
const schema = interfaces.get(info.key);
|
const schema = interfaces.get(info.key);
|
||||||
form.setValues({
|
form.setValues({
|
||||||
...schema.default,
|
...clone(schema.default),
|
||||||
collection_name: ctx.record.name,
|
collection_name: ctx.record.name,
|
||||||
key: uid(),
|
key: uid(),
|
||||||
name: uid(),
|
name: `f_${uid()}`,
|
||||||
interface: info.key,
|
interface: info.key,
|
||||||
});
|
});
|
||||||
setProperties(clone(schema.properties));
|
setProperties(clone(schema.properties));
|
||||||
|
@ -188,9 +188,10 @@ export const defaultProps = {
|
|||||||
type: 'string',
|
type: 'string',
|
||||||
title: '字段标识',
|
title: '字段标识',
|
||||||
required: true,
|
required: true,
|
||||||
'x-disabled': true,
|
// 'x-disabled': true,
|
||||||
'x-decorator': 'FormItem',
|
'x-decorator': 'FormItem',
|
||||||
'x-component': 'Input',
|
'x-component': 'Input',
|
||||||
|
description: '随机生成,可修改。支持英文、数字和下划线,必须以英文字母开头',
|
||||||
},
|
},
|
||||||
dataType,
|
dataType,
|
||||||
// 'uiSchema.required': {
|
// 'uiSchema.required': {
|
||||||
|
Loading…
Reference in New Issue
Block a user