MySQL /潜在客户管理/活动 - 结构

时间:2015-09-03 20:17:08

标签: php mysql crm

我只是在寻找构建mysql表的最佳方法。假设我有一个CAMPAIGNS表,并希望根据字段自动生成表单(即FirstName,LastName,Email,Phone)。

但我希望通过后端使这些字段可编辑,能够添加更多字段等。

最好有一个第二个表来管理与CAMPAIGN 1相关的FIELDS,还是能够直接编辑mysql TABLE?

如果我要使用第二个表FIELDS,我可以从FIELDS中提取所有字段,其中campaign ='2',显示它们,排序等等。

或者直接编辑表,直接编辑/添加/删除字段到mysql表。

使用第二个表来管理字段,让其他一切变得更复杂吗? (比如导出,而不仅仅是php-> mysql->导出表,我需要运行JOIN等)。

目前其他所有人都在做什么,特别是竞选/现场管理,表单生成等。使用这两种方法有哪些主要区别?

任何意见, 谢谢 JT

1 个答案:

答案 0 :(得分:1)

永远不要让程序直接编辑表(唯一的例外当然是创建和更改临时表)。

特别是甚至毫秒都不会考虑写一个列名的用户。

您应该在桌面上标识两类字段。修改数据处理方式的字段(这些字段与业务相关)以及仅作为顶部的字段。

如果您在额外的键值结构中编写与业务相关的字段,则在必须识别这些值时会遇到麻烦。所以我的建议是:将这些字段固定为表格列。并尝试尽可能多地制作固定的表格列,我的意思是尝试识别" CAMPAIGN"的核心信息集。这些字段将在您的表单中进行硬编码,但您可以将它们隐藏起来,我的意思是您仍然可以让用户根据自己的需要禁用其中一些字段。你应该装饰的其他领域:

  • ID
  • 对CAMPAIGN的引用,
  • 也许是一个快捷方式 - NAME(面向程序)
  • 用户可读(国际化)
    • 姓名和
    • description,
  • 基本数据类型(您可以在程序中读取,如INT和STRING甚至是EMAIL),
  • 也许是HTML类型,类和样式,以及验证规则。