假设一个简单的订单处理系统。选择了一个类别,其中列出了产品系列,选择产品时,它允许输入有关该产品的详细信息。每种产品的细节都不同。
管理员用户希望启用将新产品添加到此系统,而无需程序员参与。具有挑战性的部分是每种产品的细节形式不同。
考虑以下工作流程:
添加服务 - >添加Genera属性(描述,价格,BillType,AveActivationTime) - >添加特定属性(FieldName,ValueType,MandatorOrNot)。
目前,系统会弹出每个产品。但这已被程序员所取代。表单生成必须自动化。处理这个问题的好方法是什么?
答案 0 :(得分:1)
也许有一个customfields表,包含以下字段:
id (auto increment?)
itemType (link to type of item that uses these fields)
name
type
options
default
required
然后,当您显示更新表单时,您可以遍历附加到当前itemType的所有自定义字段。如果字段是字符串,则显示字符串输入;如果是一个选项,则显示一个选择框等。
然后将实际值存储在customdata表中:
id
itemID
fieldID
value
您可能希望对此进行扩展,以允许,例如,跨不同的itemTypes共享自定义字段。
您是否看过现有的电子商务解决方案?我认为他们中的大多数都内置了这个功能。重新发明轮子毫无意义。