重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
问题
创新互联专注于企业营销型网站建设、网站重做改版、泰宁网站定制设计、自适应品牌网站建设、H5高端网站建设、商城建设、集团公司官网建设、成都外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为泰宁等各大城市提供网站开发制作服务。北京起步科技的BeX5是企业开发与政务开发的高效平台,尽管其提供了大量的学习视频与各种形式的快速入门教程,但是,相比于WeX5(完全开源),要想在短期内迅速掌握BeX5开发还是颇有难度的。其一便是实践开发中许多细节在官方教程中根本没有提供,而论坛中一般都有涉及,无奈只提一二,见不到明确的解答。本文记录的正是本人在开发中遇到的一个问题,即如何在Grid列表组件中显示主键字段的问题。
一个概念对象,默认情况下的主键是fID,且其默认值为guid()。另外,这个默认主键在Grid组件中是无法直接显示的。另一方面,概念的主键是可以修改的。还有一个普遍会使用到的情况是一个概念中可能会有多个主键关系(关系即关系数据库表格中的字段)。根据这些特点,并结合文后论坛文章中的提示,我使用了一种方法可以在前端UI2建模界面的Grid列表组件中显示主键字段。
解决办法
1,我重新定义了概念中的fID,即原来其默认值为guid(),我则把它重新定义为nextSeqString('P','000000')。
2,添加了一个新关系,其其实是上面默认关系名fID的一个副本,名字是fSecondPrimaryKey,并作如下图所示设置:
3,我的需求是这样的(介绍的次序有些颠倒了),我想创建一个一对多的主从关系,并且想在UI界面中更方便编辑从表中的数据。其实我是有多个这样的一对多的关系表格,并且都是主从关系。
上面这多个‘一’是同一个主表,而多个‘从’表是不一样的。这样,当我向多个从表中添加数据时,从表中一般要显示对应于主表中的主键值,但是这个主键值不可能每次都输入。
如果,在主表编辑时让计算机自动按指定规律(如上面定义的那样)生成一次,则向多个从表中添加新记录时在对应字段中自动填充不是很好吗?
你看一下我的截图可能就明白我的意思了,第一个图如下:
这里,我单独编辑的主表,使用的正是Grid组件,其中的主表的默认主键fID是不会显示的。于是,我使用了它的一个副本(或者叫代替)——自定义的另一个主键secondPrimaryKey(其显示名称是‘第二个主键’)。
注意:上图1中我使用了‘主键关系’的办法,这样一来,就把fSecondPrimaryKey设置为默认主键fID的副本。另外,当概念中需要联合主键时请参考后面的‘参考资源’中介绍(其实,在许多关系数据库中联合主键的使用也不在少数,并不难理解)。
另外,这个副本主键的默认值设置为自定义的内容,如我重新定义的fID的默认值正是一般不二。
上面的主表维护操作对应的设计时选项如下图所示:
4,下图正是我众多主从界面输入数据中的其中之一(当然这个只是一个测试例子):
如我开始时描述的,我在前面单独创建了主表数据。这样,在类似于上面这种界面下,我在输入从表中数据时,只需要点击一下想对应输入的主表中的某一行,然后在上图下面部分中点击‘添加’,即可以在从表中第一列(即‘主表ID’)中自动输出这个主键值,我只需要输入第二列字段值即可,当再点击下部的添加时,同时第一列(即‘主表ID’)中自动输出这个主键值,我只需要输入第二列字段值......
注:这个图中上部的添加,删除及保存等按钮显然是不需要的,你可以轻易从toolbar组件中去掉它们。
小结
上面的描述介绍了我为什么需要在Grid组件中显示主表主键:我的目的就是在使用同一个主表的多个主从界面下看着(单击一下)主表中的行,即可在从表中输入对应的其他多行(当然,从表中对应的主键值是自动输入的)。不知说清楚了没有,有兴趣的朋友欢迎共同交流。
主要参考资源:
http://bbs.wex5.com/forum.php?mod=viewthread&tid=41360&highlight=%E5%A6%82%E4%BD%95%E6%98%BE%E7%A4%BA%E4%B8%BB%E9%94%AE
http://bbs.wex5.com/forum.php?mod=viewthread&tid=37685
http://bbs.wex5.com/forum.php?mod=viewthread&tid=53161&highlight=%E6%98%BE%E7%A4%BA%E4%B8%BB%E9%94%AE
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。