我正在考虑一些想法,以及学习Ruby on Rails(简单eh :))。我希望允许用户生成表单作为模板,然后将这些模板作为表单分配到树层次结构中的某个位置,然后允许用户填写这些表单的实例并保存数据。
所以,关于如何构建数据,我有两种不同的想法。我目前认为模板将有一个或多个部分,一个部分将有一个或多个字段,然后该字段将具有属性(类型,颜色,位置,验证等)。
所以,这应该被描述为链表;
field belongs_to_a section belongs_to_a template
或者我应该有一个模板表,它有一个名为body的字段,可以序列化为XML或者要呈现的内容?
<template>
<section>
<field attrib=foo attrib2=bar><field>
</section>
<template>
任何想法或评论都欢迎,即使我完全走错了路线......
答案 0 :(得分:1)
我会选择第一个设计。如果我是用户(或开发人员),我宁愿在逻辑相关的表中输入数据而不是写XML来定义屏幕。实际上,Oracle在其非常成功的工具Application Express后面使用了与此不同的数据结构。