今天给各位分享利用dw修改网站源码分享的知识,其中也会对dw编辑自己网站进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
在很多系统中,数据库的CRUD(增删改查)都是非常实用的基础模块,稍复杂一些还需要主从表的CRUD。下面就是一个“一主三从”的刚开多表增删改查界面:
QuickCRUD(快速增删改查)模块界面
演示网址:https://www.delphibbs.com/QuickCRUD
主要功能特点:
多字段模糊查询。在左上角的输入框内可以输入多个关键字,实现多字段模糊查询;数据分页;编辑数据;新增数据;删除数据;打印表格;数据排序
示例源码:https://www.delphibbs.com/media/source/QuickCRUD.zip
采用Delphi打开后,发现核心代码只有一行
dwCrud(self,FDConnection1,False,&39;);
只需要一行代码就可以完成如此复杂的功能。
提前需要进行数据表的设置,以明确需要哪些表,哪些字段等。数据表设置在Form1的StyleName中,为一个标准的JSON字符串,类似如下:
{\n\t&34;:&34;,\n\t&34;:5,\n\t&34;:40,\n\t&34;:[\n\t\t{\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:50,\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;\n\t\t},\n\t\t{\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:180,\n\t\t\t&34;:&34;,\n\t\t\t&34;:1,\n\t\t\t&34;:1\n\t\t},\n\t\t{\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:120,\n\t\t\t&34;:1,\n\t\t\t&34;:1\n\t\t},\n\t\t{\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:[\t&34;,\t&34;,\t&34;,\t&34;\t],\n\t\t\t&34;:180\n\t\t},\n\t\t{\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:150\n\t\t},\n\t\t{\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:[\t&34;,\t&34;,\t&34;,\t&34;,\t&34;,\t&34;,\t&34;,\t&34;\t],\n\t\t\t&34;:60\n\t\t},\n\t\t{\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:80,\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:1\n\t\t},\n\t\t{\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:80,\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:1\n\t\t},\n\t\t{\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:150\n\t\t}\n\t],\n\t&34;:5,\n\t&34;:30,\n\t&34;:[\n\t\t{\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:58,\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:1,\n\t\t\t&34;:1,\n\t\t\t&34;:1,\n\t\t\t&34;:0,\n\t\t\t&34;:[\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:80,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:1,\n\t\t\t\t\t&34;:&34;\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:1,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:80\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:1,\n\t\t\t\t\t&34;:120,\n\t\t\t\t\t&34;:1\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:180,\n\t\t\t\t\t&34;:1\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:59,\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:0,\n\t\t\t&34;:0,\n\t\t\t&34;:0,\n\t\t\t&34;:1,\n\t\t\t&34;:[\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:80,\n\t\t\t\t\t&34;:1,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:1,\n\t\t\t\t\t&34;:140\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:1,\n\t\t\t\t\t&34;:180,\n\t\t\t\t\t&34;:1\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:60,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:[\t\t\t&34;,\t\t\t&34;,\t\t&34;,\t\t&34;,\t\t&34;,\t\t&34;,\t\t&34;,\t\t&34;\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:80\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:80,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:1\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:80\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:120\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:1,\n\t\t\t\t\t&34;:100\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:120,\n\t\t\t\t\t&34;:&34;\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:60\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:60,\n\t\t\t&34;:&34;,\n\t\t\t&34;:&34;,\n\t\t\t&34;:0,\n\t\t\t&34;:1,\n\t\t\t&34;:0,\n\t\t\t&34;:1,\n\t\t\t&34;:[\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:50,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:80\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:[\t\t&34;,\t\t&34;,\t\t&34;,\t\t&34;,\t\t&34;,\t\t&34;,\t\t&34;,\t&34;\t],\n\t\t\t\t\t&34;:80\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:1,\n\t\t\t\t\t&34;:80\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:80,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:1\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:100\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:120,\n\t\t\t\t\t&34;:1\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:200,\n\t\t\t\t\t&34;:&34;\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:&34;,\n\t\t\t\t\t&34;:120\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t]\n}\n
该配置JSON各属性的说明如下:
{\n&34;:&34;,\t//主数据表名称\n&34;:5,//主表每页显示记录数量\n&34;:40,//行高\n&34;:1,\t//显示“编辑”按钮,默认为1\n&34;:1,//显示“新增”按钮,默认为1\n&34;:1,\t//显示“删除”按钮,默认为1\n&34;:0,//显示“打印”按钮,默认为1\n&34;:[//主表字段列表\n{\n&34;:&34;,//字段1的名称\n&34;:&34;,//字段1的标题,如此项未设置,则指定为名称\n&34;:50,//字段1显示宽度\n&34;:1,\t//字段1是否排序,默认0\n&34;:&34;,//对齐方式\n&34;:&34;//字段类型,目前有auto,string,integer,money,date,datetime,time等,默认string,后续陆续增加更多类型\n},\n……\n{\n&34;:&34;,\n&34;:&34;,\n&34;:150\n}\n],\n&34;:5,\t//从表每页显示记录数量\n&34;:30,//从表行高\n&34;:[//从表信息数组\n{\n&34;:&34;,\t//从表1标题\n&34;:&34;,//从表1数据表名称\n&34;:58,\t//从表1图标,序号见开发指南\n&34;:&34;,\t\t\t//和主表关联的主表字段\n&34;:&34;,\t\t\t\t//和主表关联的从表字段\n&34;:1,\t\t\t\t\t\t//显示“编辑”按钮,默认为1\n&34;:1,\t\t\t\t\t//显示“新增”按钮,默认为1\n&34;:1,\t\t\t\t\t\t//显示“删除”按钮,默认为1\n&34;:0,\t\t\t\t\t//显示“打印”按钮,默认为1\n&34;:[\t\t\t\t\t//从表1字段列表\n{\n&34;:&34;,\t\t//从表1字段1名称\n&34;:&34;,\t\t//从表1字段1显示标题,如此项未设置,则指定为名称\n&34;:80,\t\t//从表1字段1显示宽度,默认100\n&34;:&34;,//从表1字段1对齐方式,默认center\n&34;:1,\t\t//从表1字段1是否排序,默认0\n&34;:&34;//字段类型,目前有auto,string,integer,money,date,datetime,time等,默认string\n},\n……\n{\n&34;:&34;,\n&34;:&34;,\n&34;:180,\n&34;:1\n}\n]\n},\n{\n&34;:&34;,\t//从表2标题\n&34;:&34;,\t\t//从表2数据表名称\n&34;:59,\t\t//从表2图标,序号见开发指南\n&34;:&34;,\t\t\t//和主表关联的主表字段\n&34;:&34;,\t\t\t\t//和主表关联的从表字段\n&34;:0,\t\t\t\t\t\t//显示“编辑”按钮,默认为1\n&34;:0,\t\t\t\t\t//显示“新增”按钮,默认为1\n&34;:0,\t\t\t\t\t//显示“删除”按钮,默认为1\n&34;:1,\t\t\t\t\t\t//显示“打印”按钮,默认为1\n&34;:[\t\t\t\t\t\t//从表2字段列表\n…….\n]\n}\n]\n}\n
通过类似以上的配置,就可以快速实现多表的CRUD了!
开发过程中,开发者只需要编辑好配置,就可以很快完成模块。
更多精彩功能,请关注碧树西风!欢迎转发!欢迎交流
OK,本文到此结束,希望对大家有所帮助。
