【发布时间】:2011-07-22 08:49:56
【问题描述】:
我正在开展一个项目(基于 Django,尽管这与我的问题并不真正相关),并且我正在努力找出表示数据模型的最佳方式。
我有以下四种型号:
用户, 客户, 会议, 位置
用户和客户通过会议模型建立了多对多的关系。 Meeting 模型与 Location 模型具有一对一的关系。
会议将在以下任一地点举行:
- 在用户(或用户配置文件)模型中定义的地址
- 客户端模型中定义的地址。
- 必须在以后定义的其他位置。
我正在努力寻找存储位置数据的最佳方式,以使其尽可能干净和可重复使用。
我考虑将位置设置为会议模型中的一个字段,而不是一个单独的模型 - 尽管如果在同一位置创建大量会议,这也可能导致冗余数据,所以这可能是一个非首发。
我可以为每个创建的用户和客户端自动创建位置记录,并在相关记录之间使用通用关系,但是,我知道这会导致数据库性能低下。此外,并非每个客户/用户都能够在他们的位置举行会议。
谁能看到更整洁的替代方案?
任何建议表示赞赏。
谢谢。
【问题讨论】: