- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有一个已经设置好的设计,我真的可以使用一些帮助来查看我是否在正确的轨道上。如果这不是 Stackoverflow 的合适问题,我深表歉意,我会删除它。我是一个相当新的用户,并不是 100% 确定。
我正在构建一个内容管理器,所有内容都是动态来自数据库的。我有一个包含部分的页面,这些部分有字段,数据被输入到这些字段中。这些字段可以是文本框、组合框或列表框。这里的重点是能够创建页面,这些页面根据部分类型获得带有字段的适当部分,我只是想存储这些值,以便以后可以读取或编辑页面。
第1页
第一节
field1 [Texbox1]
field2 [Texbox2]
field3 [组合框1]
第二节
field1 [Texbox1]
字段 2 [列表框 1]
field3 [组合框1]
这些部分可以在不同的页面上重复使用,并且每个部分的字段始终相同。
我的数据库是这样的:
页面
* 页面标识符
* 页面名称
页面_部分
* 页面标识符
* 节
部分
* SectionId
* SectionTypeId
* 段名
部门类型
* SectionTypeId
* SectionTypeName
领域
* FieldId
* SectionId
* 字段名
字段值
* FieldValueId
* FieldId
* 字段值值
* 当前值(这有点因为组合框可以有多个值,但我想显示选择了哪个。类似地,列表框可以选择多个值)
* 页面编号
因此,根据部分类型创建带有部分的页面。每个部分都有 x 个字段,然后显然每个页面字段都可以有不同的值,这就是 FieldValue 有 pageId 的原因,但是将 pageId 放在 FieldValue 中感觉很奇怪,但我没有其他办法。我走在正确的轨道上吗?
最佳答案
我认为您的总体思路是正确的。
我担心的一个方面是每个页面上的部分排序 — 我认为您的 Page_Section 表需要一个额外的列 SeqNo SMALLINT NOT NULL
以递增顺序获取值(它们不必须是连续的),这样当您按 SeqNo 排序时,您的部分将以正确的顺序显示在页面上。
您可能需要为一个部分中的字段使用类似的排序列。
您的字段表可能需要一些字段类型信息。
也许您的 FieldValue 表应该重命名为 PageFieldValue;它旨在将值与特定页面上的字段相关联。只要给定的字段不能在页面上出现多次,重命名的表就是准确命名的;它包含指定页面上的一个字段的值。目前尚不清楚是否可以有某种默认系统,以便如果页面没有为字段指定特定值,那么默认值就会生效。这可能值得考虑。
关于database - 我在这个数据库设计上是否走在正确的轨道上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13591809/
我想递归地遍历一个目录,但我希望 python 在遇到包含超过 100 个文件的目录时从任何单个 listdir 中断。基本上,我正在搜索 (.TXT) 文件,但我想避免使用包含大型 DPX 图像序列
我正在尝试遍历列表(例如 sql 行)并为每一行触发例程。问题是传递给函数的值不会在运行时进行评估,因此根据函数执行所需的时间,它可能会使用下一行中的任何值而不是当前行。 我知道我可以在普通函数中提取
我需要以毫秒为单位的时间来处理大量事务,因此我想要正确且快速的东西。下面的工作会做得最好吗? : iMilli := int((time.Nanoseconds() % 1e6) / 1e3
我有以下目录/文件设置(已简化): Ce +---top.txt +---X0.0 | | | +---Y0.0 | | | | |
我遇到了类似的问题: Connecting to Redis To Go with PHP 基本上,我在 redis 中有这个 uri: redis://myusername:foopassword@
我阅读了下面的主题 Go: multiple value in single-value context 但我不明白这个解释在我的案例中。可能是因为我想使用 interface 在下面的情况下,我得到
我有一个模板,我想使用 text/template 评估各个字段包裹。我很难弄清楚评估应该如何工作,因为下面的代码似乎失败了。模板包是否足够强大以处理此类评估? type something stru
我编写了简单的服务器程序来从客户端接收数据。我有点不明白有时我从函数中得到错误 read tcp4 IP:PORT i/o timeoutint, err := conn.Read([]byte) 未
我只需要解码和更新 json 对象的特定值。问题是我不知道对象的完整结构。 encoding/json 包“忽略”/截断结构中未提供的字段,因此在编码时这些字段将丢失。 我想知道是否可以只解码我知道的
我正在尝试使用带有 C++ 目标的 ANTLR4 来实现 TSql 解析器。我抓取了语法文件 here .该jar用于制作相应的源文件(因冲突将TSqlParser.cpp中的NULL全部改为null
我在 win7 中使用 python 3.3.3 - 我只想列出网络目录中的所有文件。 import os for root, dirs, files in os.walk("X:\\network\
当我运行 go 脚本 ( go run example.go ) 时出现此错误 /home/travis/.gvm/gos/go1.1.2/src/pkg/github.com/user/exampl
我正在尝试通过 gmail API 发送电子邮件使用 Go但我发现文档非常有缺陷/令人困惑。这一次我看不到收据字段和电子邮件正文。 我不需要上传任何东西,所以我找到了 Simple upload ,
本人是一名专业的windows/.Net开发者,一直在慢慢学习rails/ruby/python/etc。在我有空的时候。在过去 8 年左右的时间里,我也一直在使用各种 Linux 发行版。然而,有一
我想知道是否可以使用 std http 来响应 http 请求打包并仍然保持 go 例程事件(例如运行任务密集型任务)。用例是我需要接收一个 http 请求,然后在几分钟后回调该服务 最佳答案 只需从
我想知道关于指针的最佳实践是什么。我应该在结构上还是在其字段上定义它们。我虽然定义一个指向结构本身的指针是有意义的,但这里有一个我觉得很有趣的例子。如果所有字段都是指针,为什么我不应该使用指向整个结构
我是一名优秀的程序员,十分优秀!