修改
This commit is contained in:
parent
30f10660d0
commit
ac3c164adc
@ -67,7 +67,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</div> -->
|
</div> -->
|
||||||
<fc-designer ref="designer" :theme="theme" :list="list" @save="onSave" @switchForm="switchForm" :field="field"
|
<fc-designer ref="designer" :theme="theme" :list="list" @save="onSave" @switchForm="switchForm" :field="field"
|
||||||
:locale="locale" :handle="handle" :config="config">
|
:locale="locale" :handle="handle" :config="config" :appUrl="'http://192.168.1.38:8100'"
|
||||||
|
:appId="'1907238244651679745'">
|
||||||
<template #block_fff="scope">
|
<template #block_fff="scope">
|
||||||
<template #block_fff="scope">
|
<template #block_fff="scope">
|
||||||
自定义内容
|
自定义内容
|
||||||
@ -722,7 +723,10 @@ export default {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
// this.$refs.designer.setRule(formCreate.parseJson("[{\"type\":\"html\",\"native\":true,\"attrs\":{\"innerHTML\":\"\"},\"style\":{\"height\":\"100px\",\"width\":\"100%\",\"display\":\"flex\",\"justifyContent\":\"center\",\"alignItems\":\"center\"},\"children\":[\"<div style=\\\"width: 100%; display: flex; justify-content: center; align-items: center;border: 1px solid #f6f6f7;\\n border-radius: 12px;\\n height: 100%;\\n background-color: var(--fc-bg-color-3);\\\">\\n👈🏻 点击左侧边栏 <i class=\\\"fc-icon icon-menu2\\\" style=\\\"font-size:26px;margin:0 2px;color:var(--fc-style-color-1);\\\"></i> 按钮查看更多功能示例\\n </div>\"],\"_fc_id\":\"id_F85km1usjbq4egc\",\"name\":\"ref_F2n0m1usjbq4ehc\",\"_fc_drag_tag\":\"html\",\"display\":true,\"hidden\":false},{\"type\":\"html\",\"native\":true,\"attrs\":{\"innerHTML\":\"\"},\"style\":{\"display\":\"block\",\"width\":\"100%\"},\"children\":[\"<div class=\\\"_fd-view-box\\\">\\n <div class=\\\"title\\\">FormCreate 设计器高级版演示站</div>\\n <div class=\\\"desc\\\">全面实现多端表单设计,为企业提供低代码表单解决方案</div>\\n<div class=\\\"_fd-view-products\\\">\\n <a class=\\\"_fd-view-product\\\" href=\\\"https://pro.form-create.com/view\\\" target=\\\"_blank\\\">\\n <div><div>ElementPlus版PC端设计器👨🏻💻(Vue3)</div><span>立即体验</span></div> <span>采用 Vue3.0 和 ElementPlus 进行页面构建</span>\\n </a>\\n <a class=\\\"_fd-view-product vue2\\\" href=\\\"https://pro.form-create.com/vue2/view\\\" target=\\\"_blank\\\">\\n <div><div>ElementUI版PC端设计器👨🏻💻(Vue2)</div><span>立即体验</span></div> <span>采用 Vue2.7 和 ElementUI 进行页面构建</span>\\n </a>\\n <a class=\\\"_fd-view-product\\\" href=\\\"https://pro.form-create.com/mobile\\\" target=\\\"_blank\\\">\\n <div><div>ElementPlus版移动端设计器📱(Vue3)</div><span>立即体验</span></div> <span>采用 Vue3.0 和 ElementPlus 进行页面构建,移动端采用Vant4.0</span>\\n </a>\\n <a class=\\\"_fd-view-product vue2\\\" href=\\\"https://pro.form-create.com/vue2/mobile\\\" target=\\\"_blank\\\">\\n <div><div>ElementUI版移动端设计器📱(Vue2)</div><span>立即体验</span></div> <span>采用 Vue2.7 和 ElementUI 进行页面构建,移动端采用Vant2.0</span>\\n </a>\\n <a class=\\\"_fd-view-product\\\" href=\\\"https://pro.form-create.com/antd/view\\\" target=\\\"_blank\\\">\\n <div><div>Ant Design Vue版PC端设计器👨🏻💻(Vue3)</div><span>立即体验</span></div> <span>采用 Vue3.0 和 Ant Design Vue 进行页面构建</span>\\n </a>\\n <a class=\\\"_fd-view-product vue2\\\" href=\\\"https://pro.form-create.com/vue2/antd/view\\\" target=\\\"_blank\\\">\\n <div><div>Ant Design Vue版PC端设计器👨🏻💻(Vue2)</div><span>立即体验</span></div> <span>采用 Vue2.7 和 Ant Design Vue 进行页面构建</span>\\n </a>\\n <a class=\\\"_fd-view-product\\\" href=\\\"https://pro.form-create.com/antd/mobile\\\" target=\\\"_blank\\\">\\n <div><div>Ant Design Vue版移动端设计器📱(Vue3)</div><span>立即体验</span></div> <span>采用 Vue3.0 和 Ant Design Vue 进行页面构建,移动端采用Vant4.0</span>\\n </a>\\n <a class=\\\"_fd-view-product vue2\\\" href=\\\"https://pro.form-create.com/vue2/antd/mobile\\\" target=\\\"_blank\\\">\\n <div><div>Ant Design Vue版移动端设计器📱(Vue2)</div><span>立即体验</span></div> <span>采用 Vue2.7 和 Ant Design Vue 进行页面构建,移动端采用Vant2.0</span>\\n </a>\\n </div>\\n</div>\"],\"_fc_id\":\"id_Fr6ym35jirw4acc\",\"name\":\"ref_Fcfnm35jirw4adc\",\"_fc_drag_tag\":\"html\",\"display\":true,\"hidden\":false}]"))
|
// this.$refs.designer.setRule(formCreate.parseJson("[{\"type\":\"html\",\"native\":true,\"attrs\":{\"innerHTML\":\"\"},\"style\":{\"height\":\"100px\",\"width\":\"100%\",\"display\":\"flex\",\"justifyContent\":\"center\",\"alignItems\":\"center\"},\"children\":[\"<div style=\\\"width: 100%; display: flex; justify-content: center; align-items: center;border: 1px solid #f6f6f7;\\n border-radius: 12px;\\n height: 100%;\\n background-color: var(--fc-bg-color-3);\\\">\\n👈🏻 点击左侧边栏 <i class=\\\"fc-icon icon-menu2\\\" style=\\\"font-size:26px;margin:0 2px;color:var(--fc-style-color-1);\\\"></i> 按钮查看更多功能示例\\n </div>\"],\"_fc_id\":\"id_F85km1usjbq4egc\",\"name\":\"ref_F2n0m1usjbq4ehc\",\"_fc_drag_tag\":\"html\",\"display\":true,\"hidden\":false},{\"type\":\"html\",\"native\":true,\"attrs\":{\"innerHTML\":\"\"},\"style\":{\"display\":\"block\",\"width\":\"100%\"},\"children\":[\"<div class=\\\"_fd-view-box\\\">\\n <div class=\\\"title\\\">FormCreate 设计器高级版演示站</div>\\n <div class=\\\"desc\\\">全面实现多端表单设计,为企业提供低代码表单解决方案</div>\\n<div class=\\\"_fd-view-products\\\">\\n <a class=\\\"_fd-view-product\\\" href=\\\"https://pro.form-create.com/view\\\" target=\\\"_blank\\\">\\n <div><div>ElementPlus版PC端设计器👨🏻💻(Vue3)</div><span>立即体验</span></div> <span>采用 Vue3.0 和 ElementPlus 进行页面构建</span>\\n </a>\\n <a class=\\\"_fd-view-product vue2\\\" href=\\\"https://pro.form-create.com/vue2/view\\\" target=\\\"_blank\\\">\\n <div><div>ElementUI版PC端设计器👨🏻💻(Vue2)</div><span>立即体验</span></div> <span>采用 Vue2.7 和 ElementUI 进行页面构建</span>\\n </a>\\n <a class=\\\"_fd-view-product\\\" href=\\\"https://pro.form-create.com/mobile\\\" target=\\\"_blank\\\">\\n <div><div>ElementPlus版移动端设计器📱(Vue3)</div><span>立即体验</span></div> <span>采用 Vue3.0 和 ElementPlus 进行页面构建,移动端采用Vant4.0</span>\\n </a>\\n <a class=\\\"_fd-view-product vue2\\\" href=\\\"https://pro.form-create.com/vue2/mobile\\\" target=\\\"_blank\\\">\\n <div><div>ElementUI版移动端设计器📱(Vue2)</div><span>立即体验</span></div> <span>采用 Vue2.7 和 ElementUI 进行页面构建,移动端采用Vant2.0</span>\\n </a>\\n <a class=\\\"_fd-view-product\\\" href=\\\"https://pro.form-create.com/antd/view\\\" target=\\\"_blank\\\">\\n <div><div>Ant Design Vue版PC端设计器👨🏻💻(Vue3)</div><span>立即体验</span></div> <span>采用 Vue3.0 和 Ant Design Vue 进行页面构建</span>\\n </a>\\n <a class=\\\"_fd-view-product vue2\\\" href=\\\"https://pro.form-create.com/vue2/antd/view\\\" target=\\\"_blank\\\">\\n <div><div>Ant Design Vue版PC端设计器👨🏻💻(Vue2)</div><span>立即体验</span></div> <span>采用 Vue2.7 和 Ant Design Vue 进行页面构建</span>\\n </a>\\n <a class=\\\"_fd-view-product\\\" href=\\\"https://pro.form-create.com/antd/mobile\\\" target=\\\"_blank\\\">\\n <div><div>Ant Design Vue版移动端设计器📱(Vue3)</div><span>立即体验</span></div> <span>采用 Vue3.0 和 Ant Design Vue 进行页面构建,移动端采用Vant4.0</span>\\n </a>\\n <a class=\\\"_fd-view-product vue2\\\" href=\\\"https://pro.form-create.com/vue2/antd/mobile\\\" target=\\\"_blank\\\">\\n <div><div>Ant Design Vue版移动端设计器📱(Vue2)</div><span>立即体验</span></div> <span>采用 Vue2.7 和 Ant Design Vue 进行页面构建,移动端采用Vant2.0</span>\\n </a>\\n </div>\\n</div>\"],\"_fc_id\":\"id_Fr6ym35jirw4acc\",\"name\":\"ref_Fcfnm35jirw4adc\",\"_fc_drag_tag\":\"html\",\"display\":true,\"hidden\":false}]"))
|
||||||
}
|
|
||||||
|
|
||||||
|
}
|
||||||
|
// this.$refs.designer.setOption(formCreate.parseJson(`{"form":{"inline":false,"hideRequiredAsterisk":false,"labelPosition":"right","size":"default","labelWidth":"125px","showMessage":false},"resetBtn":{"show":false,"innerText":"重置"},"submitBtn":{"show":false,"innerText":"提交"},"datasetInfo":{"datasource_id":"985188400292302848","group_name":"测试数据表","table_id":"7330790222512263168","table_name":"data_test"},"appUrl":"/api"}`));
|
||||||
// this.$refs.designer.setGlobalEvent({
|
// this.$refs.designer.setGlobalEvent({
|
||||||
// "event_Feq4lui56zxbabc": {
|
// "event_Feq4lui56zxbabc": {
|
||||||
// "label": "自定义",
|
// "label": "自定义",
|
||||||
|
@ -202,7 +202,7 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-main>
|
</el-main>
|
||||||
<el-main v-if="activeMenuTab === 'field'">
|
<el-main v-if="activeMenuTab === 'field'">
|
||||||
<el-select v-model="datasetId" clearable filterable
|
<el-select v-model="tableId" clearable filterable
|
||||||
style="width: 240px; margin: 12px"
|
style="width: 240px; margin: 12px"
|
||||||
@change="dsClick">
|
@change="dsClick">
|
||||||
<el-option
|
<el-option
|
||||||
@ -913,7 +913,8 @@ export default defineComponent({
|
|||||||
provide('fcx', fcx);
|
provide('fcx', fcx);
|
||||||
provide('designer', vm);
|
provide('designer', vm);
|
||||||
|
|
||||||
|
|
||||||
|
const gisBiUrl = props.appUrl;
|
||||||
const configRef = toRef(props, 'config', {});
|
const configRef = toRef(props, 'config', {});
|
||||||
const theme = toRef(props, 'theme');
|
const theme = toRef(props, 'theme');
|
||||||
const fieldRef = toRef(props, 'field', []);
|
const fieldRef = toRef(props, 'field', []);
|
||||||
@ -1027,7 +1028,7 @@ export default defineComponent({
|
|||||||
isLeaf: node => !node.children?.length
|
isLeaf: node => !node.children?.length
|
||||||
},
|
},
|
||||||
fieldData:[],
|
fieldData:[],
|
||||||
datasetId: '', // 数据集id
|
tableId: '', // 数据集id
|
||||||
|
|
||||||
|
|
||||||
pageData: [],
|
pageData: [],
|
||||||
@ -1072,6 +1073,7 @@ export default defineComponent({
|
|||||||
api: {},
|
api: {},
|
||||||
}),
|
}),
|
||||||
formOptions: {
|
formOptions: {
|
||||||
|
appUrl:gisBiUrl,
|
||||||
datasetInfo:{}
|
datasetInfo:{}
|
||||||
},
|
},
|
||||||
oldOptionsKeys: [],
|
oldOptionsKeys: [],
|
||||||
@ -1344,8 +1346,12 @@ export default defineComponent({
|
|||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
const methods = {
|
const methods = {
|
||||||
|
/**
|
||||||
|
* 开始
|
||||||
|
* 李梦楠 2025.05.25
|
||||||
|
* 自定义方法
|
||||||
|
*/
|
||||||
dsClick(id) {
|
dsClick(id) {
|
||||||
methods.onDatasetChange(id)
|
|
||||||
data.datasetData.forEach(element => {
|
data.datasetData.forEach(element => {
|
||||||
if(element.table_id == id){
|
if(element.table_id == id){
|
||||||
data.datasetInfo = element
|
data.datasetInfo = element
|
||||||
@ -1353,27 +1359,41 @@ export default defineComponent({
|
|||||||
data.formOptions.datasetInfo = element
|
data.formOptions.datasetInfo = element
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
methods.onDatasetChange(data.datasetInfo)
|
||||||
},
|
},
|
||||||
onDatasetChange(id){
|
onDatasetChange(row){
|
||||||
let appUrl = data.appUrl
|
let token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1aWQiOjEsIm9pZCI6MX0.i8pMPviPZoQyjXML3dLfLek4XML2acUf-x0K90u9KoY"
|
||||||
if( data.appUrl == null){
|
if(localStorage.getItem("user.token")!=undefined && localStorage.getItem("user.token") !=""){
|
||||||
appUrl = "http://192.168.1.38:8100"
|
const usertoken = JSON.parse(localStorage.getItem('user.token'))
|
||||||
|
token = JSON.parse(usertoken.v)
|
||||||
|
}
|
||||||
|
let appUrl = gisBiUrl
|
||||||
|
if( appUrl == null){
|
||||||
|
appUrl = ""
|
||||||
}
|
}
|
||||||
data.fieldData = []
|
data.fieldData = []
|
||||||
axios.get( appUrl + '/datasetData/getFieldsByTableId', {
|
axios.get( appUrl + '/datasetData/getFieldsByTableId', {
|
||||||
|
headers: {
|
||||||
|
"X-De-Token":token
|
||||||
|
},
|
||||||
params: {
|
params: {
|
||||||
id: id
|
datasourceId: row.datasource_id,
|
||||||
|
tablename:row.table_name
|
||||||
}
|
}
|
||||||
}).then(response => {
|
}).then(response => {
|
||||||
console.log(response)
|
console.log(response)
|
||||||
response.data.data.forEach(element => {
|
|
||||||
|
data.datasetInfo.keyfeilds = response.data.data.keyfeilds
|
||||||
|
data.formOptions.datasetInfo.keyfeilds = response.data.data.keyfeilds
|
||||||
|
response.data.data.fields.forEach(element => {
|
||||||
element.label = element.name
|
element.label = element.name
|
||||||
element.item = 'input',
|
element.item = 'input',
|
||||||
|
element.iskey = element.iskey
|
||||||
element.fieldtype = element.type,
|
element.fieldtype = element.type,
|
||||||
element.maxlength = element.size,
|
element.maxlength = element.size,
|
||||||
element.field = element.origin_name
|
element.field = element.origin_name
|
||||||
element.update = {
|
element.update = {
|
||||||
disabled: false
|
disabled:element.iskey
|
||||||
}
|
}
|
||||||
data.fieldData.push(element)
|
data.fieldData.push(element)
|
||||||
})
|
})
|
||||||
@ -1382,13 +1402,22 @@ export default defineComponent({
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
getInit(){
|
getInit(){
|
||||||
let appUrl = data.appUrl
|
data.formOptions.appUrl = gisBiUrl
|
||||||
if( data.appUrl == null){
|
let appUrl = gisBiUrl
|
||||||
appUrl = "http://192.168.1.38:8100"
|
if( appUrl == null){
|
||||||
|
appUrl = ""
|
||||||
|
}
|
||||||
|
let token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1aWQiOjEsIm9pZCI6MX0.i8pMPviPZoQyjXML3dLfLek4XML2acUf-x0K90u9KoY"
|
||||||
|
if(localStorage.getItem("user.token")!=undefined && localStorage.getItem("user.token") !=""){
|
||||||
|
const usertoken = JSON.parse(localStorage.getItem('user.token'))
|
||||||
|
token = JSON.parse(usertoken.v)
|
||||||
}
|
}
|
||||||
axios.get( appUrl+ '/datasetData/getTablesByAppId', {
|
axios.get( appUrl+ '/datasetData/getTablesByAppId', {
|
||||||
|
headers: {
|
||||||
|
"X-De-Token":token
|
||||||
|
},
|
||||||
params: {
|
params: {
|
||||||
appid: '1907238244651679745'
|
appid: props.appId
|
||||||
}
|
}
|
||||||
}).then(response => {
|
}).then(response => {
|
||||||
data.datasetData = response.data.data
|
data.datasetData = response.data.data
|
||||||
@ -1396,7 +1425,11 @@ export default defineComponent({
|
|||||||
console.error(' 请求出错:', error);
|
console.error(' 请求出错:', error);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
/**
|
||||||
|
* 结束
|
||||||
|
* 李梦楠 2025.05.25
|
||||||
|
* 自定义方法
|
||||||
|
*/
|
||||||
setDevice(device) {
|
setDevice(device) {
|
||||||
data.device = device;
|
data.device = device;
|
||||||
vm.emit('changeDevice', device);
|
vm.emit('changeDevice', device);
|
||||||
@ -1891,6 +1924,10 @@ export default defineComponent({
|
|||||||
fcx.active = '';
|
fcx.active = '';
|
||||||
},
|
},
|
||||||
setOption(opt) {
|
setOption(opt) {
|
||||||
|
if( opt.datasetInfo && opt.datasetInfo.table_id ){
|
||||||
|
data.tableId = opt.datasetInfo.table_id
|
||||||
|
methods.dsClick(data.tableId)
|
||||||
|
}
|
||||||
const defOptions = deepCopy(methods.getConfig('formOptions', {}));
|
const defOptions = deepCopy(methods.getConfig('formOptions', {}));
|
||||||
const defForm = defOptions.form || {};
|
const defForm = defOptions.form || {};
|
||||||
delete defOptions.form;
|
delete defOptions.form;
|
||||||
@ -1917,6 +1954,7 @@ export default defineComponent({
|
|||||||
if (!hasProperty(options, 'globalEvent')) {
|
if (!hasProperty(options, 'globalEvent')) {
|
||||||
options.globalEvent = {};
|
options.globalEvent = {};
|
||||||
}
|
}
|
||||||
|
options.appUrl = gisBiUrl || '';
|
||||||
if (!hasProperty(options, 'globalData')) {
|
if (!hasProperty(options, 'globalData')) {
|
||||||
options.globalData = {};
|
options.globalData = {};
|
||||||
}
|
}
|
||||||
@ -2134,7 +2172,6 @@ export default defineComponent({
|
|||||||
return data.dragForm.api.all().map(rule => rule.field).filter(id => !!id);
|
return data.dragForm.api.all().map(rule => rule.field).filter(id => !!id);
|
||||||
},
|
},
|
||||||
getTitle(rule) {
|
getTitle(rule) {
|
||||||
debugger
|
|
||||||
return (rule?.__fc__?.refRule?.__$title?.value || rule.title || '').trim() || (rule.props && rule.props.label) || t('com.' + (rule._menu && rule._menu.name) + '.name') || (rule._menu && rule._menu.label) || rule.type
|
return (rule?.__fc__?.refRule?.__$title?.value || rule.title || '').trim() || (rule.props && rule.props.label) || t('com.' + (rule._menu && rule._menu.name) + '.name') || (rule._menu && rule._menu.label) || rule.type
|
||||||
},
|
},
|
||||||
baseChange(field, value, _, fapi) {
|
baseChange(field, value, _, fapi) {
|
||||||
@ -2461,7 +2498,7 @@ export default defineComponent({
|
|||||||
fieldtype: rule.fieldtype || '',
|
fieldtype: rule.fieldtype || '',
|
||||||
info: rule.info,
|
info: rule.info,
|
||||||
ignore: rule.ignore || false,
|
ignore: rule.ignore || false,
|
||||||
attributeId: rule.attributeId || false,
|
iskey: rule.iskey || false,
|
||||||
_control: rule._control,
|
_control: rule._control,
|
||||||
...formData
|
...formData
|
||||||
};
|
};
|
||||||
@ -2511,6 +2548,10 @@ export default defineComponent({
|
|||||||
update
|
update
|
||||||
});
|
});
|
||||||
} else if (menu.item) {
|
} else if (menu.item) {
|
||||||
|
if(data.dragRuleList[menu.item] !=undefined && menu.iskey != undefined ){
|
||||||
|
data.dragRuleList[menu.item].iskey = menu.iskey;
|
||||||
|
}
|
||||||
|
|
||||||
methods.dragMenu({
|
methods.dragMenu({
|
||||||
menu: data.dragRuleList[menu.item],
|
menu: data.dragRuleList[menu.item],
|
||||||
children: children || data.children,
|
children: children || data.children,
|
||||||
@ -2839,6 +2880,9 @@ export default defineComponent({
|
|||||||
},
|
},
|
||||||
makeRule(config, _rule) {
|
makeRule(config, _rule) {
|
||||||
let rule = _rule || config.rule({t});
|
let rule = _rule || config.rule({t});
|
||||||
|
if(config && config.iskey){
|
||||||
|
rule.iskey = config.iskey;
|
||||||
|
}
|
||||||
const updateRule = updateDefaultRule.value && updateDefaultRule.value[config.name];
|
const updateRule = updateDefaultRule.value && updateDefaultRule.value[config.name];
|
||||||
if (!_rule && updateRule) {
|
if (!_rule && updateRule) {
|
||||||
if (typeof updateRule === 'function') {
|
if (typeof updateRule === 'function') {
|
||||||
|
@ -6,14 +6,14 @@ export default function field({t}) {
|
|||||||
type: 'ConfigItem',
|
type: 'ConfigItem',
|
||||||
col: {show: true},
|
col: {show: true},
|
||||||
style: 'margin-bottom: 10px',
|
style: 'margin-bottom: 10px',
|
||||||
name: 'attributeId',
|
name: 'iskey',
|
||||||
props: {
|
props: {
|
||||||
label: t('form.attributeId'),
|
label: t('form.iskey'),
|
||||||
warning: t('warning.attributeId'),
|
warning: t('warning.iskey'),
|
||||||
},
|
},
|
||||||
children: [{
|
children: [{
|
||||||
type: 'switch',
|
type: 'switch',
|
||||||
field: 'attributeId',
|
field: 'iskey',
|
||||||
value: false,
|
value: false,
|
||||||
wrap: {show: false},
|
wrap: {show: false},
|
||||||
col: {show: false},
|
col: {show: false},
|
||||||
|
@ -3,7 +3,7 @@ const ZhCn = {
|
|||||||
form: {
|
form: {
|
||||||
field: '字段 ID',
|
field: '字段 ID',
|
||||||
title: '字段名称',
|
title: '字段名称',
|
||||||
attributeId: '是否主键',
|
iskey: '是否主键',
|
||||||
fieldtype: '字段类型',
|
fieldtype: '字段类型',
|
||||||
info: '提示信息',
|
info: '提示信息',
|
||||||
ignore: '忽略字段',
|
ignore: '忽略字段',
|
||||||
|
Loading…
Reference in New Issue
Block a user