Foxnic-Web 代码生成 (7) —— 配置表单页

LeeFJ
• 阅读 446
Foxnic-Web 代码生成 (7) —— 配置表单页
概述

  我们之前已经介绍了字段的通用配置和字段的表单组件配置,这些配置仅限于单个字段。由于 Foxnic-Web 的模块页面以打开窗口的方式呈现表单内容,自然就会有对表单窗口的控制,以及表单字段布局的控制。

  本篇我们就来了解一下,在代码生成时的表单呈现方面,我们可以做点啥。

  本文中的示例代码均可在 https://gitee.com/LeeFJ/foxnic-samples 项目中找到,本文对照 webfull 项目讲解。

完整示例

  Foxnic-Web 项目提供代码生成的完整示例,请大家参考:

https://gitee.com/LeeFJ/foxnic-web/blob/1.7.0.RELEASE/common/generator/src/main/java/org/github/foxnic/web/generator/module/example/CodeExampleConfig.java

配置表单窗口

  表单相关的配置可以在模块代码配置类的 configForm 方法内实现:

@Override
public void configForm(ViewOptions view, FormOptions form, FormWindowOptions formWindow) {
    formWindow.width("120px");
    formWindow.bottomSpace(263);
}

  配置表单窗口,通过 ViewOptions.formWindow() 选项控制。formWindow 提供的控制项包括:

配置项 说明
width 设置表单窗口的宽度,默认500px;字符串可以指定像素或百分比。
bottomSpace 设置最下方的表单组件和窗口底部之间的间距,用于撑高表单窗口的高度,便于下拉框展示。

  表单窗是按表单内实际内容自动调节高度的,所以不必指定表单窗口的高度。单某些情况下,由于表单内字段较少,窗口高度也会比较低,这时,如果输入框是下拉框,那么可能不能很好地展示下拉选项,需要将表单窗口的高度人为的增加一些,这时就需要用到 bottomSpace 参数。

配置表单依赖文件

  表单以及表单页面通过 FormOptions 配置。在代码生成时,表单页面可以额外包含其它的 js 和 css 文件,以及变量等,配置项如下:

配置项 说明
addCss 添加 css 文件引入
addJs 添加 js 文件引入。
addJsVariable 添加 js 变量;这是表单的服务端模版变量。
配置表单外观参数

表单的外观参数如下:

配置项 说明
labelWidth 设置标签宽度,单栏次默认 65px;多栏次默认 100px
disableFooter 禁用 Footer,用于页面的嵌入。
disableMargin 禁用 Margin,用于页面的嵌入。
enableContextMenu 启用右键菜单,默认false。
配置表单布局

  Foxic-Web 的表单布局是比较丰富的,支持分组、分栏;支持添加嵌入页面、Tab等,相关配置项如下:

配置项 说明
columnLayout 使用分栏布局
addGroup 添加一个分组布局
addPage 添加一个内嵌页面
addTab 添加一个内嵌的 Tab
配置表单接口

  Foxic-Web 的表单布局是比较丰富的,支持分组、分栏;支持添加嵌入页面、Tab等,相关配置项如下:

配置项 说明
savingURL 设置自定义保存接口地址
loadingURL 设置自定义数据加载接口地址
小结

  本节主要从表单窗口、表单页面依赖、表单外观、布局、接口等方面介绍了在代码生成时如何控制表单的外观呈现与功能特性。下一节,我们将介绍表格以及搜索相关方面的代码生成配置项。

相关项目

  https://gitee.com/LeeFJ/foxnic

  https://gitee.com/LeeFJ/foxnic-web

  https://gitee.com/lank/eam

  https://gitee.com/LeeFJ/foxnic-samples

官方文档

  http://foxnicweb.com/docs/doc.html

点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Easter79 Easter79
2年前
sql注入
反引号是个比较特别的字符,下面记录下怎么利用0x00SQL注入反引号可利用在分隔符及注释作用,不过使用范围只于表名、数据库名、字段名、起别名这些场景,下面具体说下1)表名payload:select\from\users\whereuser\_id1limit0,1;!(https://o
AWS国庆双重礼,仅限7天
自2021年10月1日00:00起至2021年10月7日24:00,新注册并激活(需全部完成账号注册的五个步骤,否则账号状态并未激活)AWS海外区域账户,填写页面下方表单,即可申领价值$200美元的AWS海外区域账户服务抵扣券直充到您的账户,用以抵扣服务消费,助您轻松体验多个云迁移应用场景。同时,您还可获赠AWS精美祥云纪念T恤一件。,仅限7天$20
AWS国庆双重礼,仅限7天
自2021年10月1日00:00起至2021年10月7日24:00,新注册并激活(需全部完成账号注册的五个步骤,否则账号状态并未激活)AWS海外区域账户,填写页面下方表单,即可申领价值$200美元的AWS海外区域账户服务抵扣券直充到您的账户,用以抵扣服务消费,助您轻松体验多个云迁移应用场景。同时,您还可获赠AWS精美祥云纪念T恤一件。,仅限7天$20
Wesley13 Wesley13
2年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Wesley13 Wesley13
2年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
2年前
ELK学习笔记之配置logstash消费kafka多个topic并分别生成索引
0x00 filebeat配置多个topicfilebeat.prospectors:input_type:logencoding:GB2312fields_under_root:truefields:添加字段
Wesley13 Wesley13
2年前
PHP创建多级树型结构
<!lang:php<?php$areaarray(array('id'1,'pid'0,'name''中国'),array('id'5,'pid'0,'name''美国'),array('id'2,'pid'1,'name''吉林'),array('id'4,'pid'2,'n
Stella981 Stella981
2年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
2年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_