1

我正在为服务提供商开发一个计费系统,我必须实现一个名为 Customizable 首选项模式的东西。主要功能应该是允许管理员定义在各种情况下哪些字段是必需的。例如,如果客户只在网站上注册,他必须输入名字、姓氏和电子邮件地址。如果他订购了可计费的东西,那么他应该输入一些基本地址数据,但如果他想要特定的东西,他应该输入帐单和送货地址。我想让管理员定义每个产品(或类别)地址的哪些字段是强制性的,哪些地址(账单、运输、主要等)是强制性的。如果一种产品/服务需要多个地址,则它们都具有相同的必填字段列表。一件重要的事情是应该允许定义附加字段。选择地址架构的规则将基于产品和/或国家/地区。

我的问题是什么应该是适合这个问题的模型。我想客户对象应该有地址列表。每个地址都应该有它的名称(Billing、Main、Shipping)和对其值的引用。在数据库方面,我的想法是为具有标准属性的地址提供一个表作为列,并为自定义属性(由管理员定义)提供一个 EAV 表。我已经考虑过类表继承,但在这里不合适,因为我没有最终的地址属性集。第二种选择是使用 XML 列来存储自定义属性,但我没有使用过该数据类型,我不确定性能。我知道 EAV 不是标准的关系设计,但在这里看起来不错。但是,就像我说的,我不能 100% 确定这些解决方案中的任何一个,并且想听听一些其他的想法。

提前致谢。

4

1 回答 1

1

看看这个讨论

于 2010-07-30T12:14:00.790 回答