cakePHP一个应用程序多个需求

cakePHP一个应用程序多个需求,cakephp,database-schema,cakephp-2.3,Cakephp,Database Schema,Cakephp 2.3,我正在处理一个概念问题 我正在写一个应用程序,收集来自不同用户的数据 简介。 每个用户配置文件都需要一组不同的表。 配置文件没有公共表 除了最后收集数据外,我还应该通过关联来自不同侧面的数据对它们进行一些简短的分析 我的计划是拥有一个db,并在表上使用前缀来分隔配置文件。 由于我必须支持约20个配置文件,因此最终我将拥有100多个模型/控制器类 我能以更易于管理的方式组织它们吗 附言:我是蛋糕的初学者。:-) 使用a,请参见。您可以使用关系数据库中的单个表或键值数据库来实现这一点 profile

我正在处理一个概念问题

我正在写一个应用程序,收集来自不同用户的数据 简介。 每个用户配置文件都需要一组不同的表。 配置文件没有公共表

除了最后收集数据外,我还应该通过关联来自不同侧面的数据对它们进行一些简短的分析

我的计划是拥有一个db,并在表上使用前缀来分隔配置文件。 由于我必须支持约20个配置文件,因此最终我将拥有100多个模型/控制器类

我能以更易于管理的方式组织它们吗

附言:我是蛋糕的初学者。:-)

使用a,请参见。您可以使用关系数据库中的单个表或键值数据库来实现这一点

profile_id | key | value
这个简单的表布局允许您在每个概要文件中存储任意多个键值对


您使用什么数据库系统以及如何在CakePHP中实现它取决于您。

您可以有一个“ProfileField”模型,用于存储字段的名称和可能的值/选项,以及一个“UserProfileField”模型,用于将这些配置文件字段映射到用户,然后,当您创建用户时,您可以将现有的配置文件字段分配给它(通过创建UserProfileField条目),或者创建一个新的配置文件字段并映射该字段……嗯…………我认为最好的选择应该是为每个配置文件使用一个单独的应用程序。然后,我会对每个配置文件进行一个干净的MVC分离,但我最终会得到许多db(每个配置文件一个)…每个配置文件一个应用程序是一个维护恐惧,这是你能做的最糟糕的事情。@gpio我完全不同意。当采用“MVC”方法时,意味着您可能需要无限数量的表或数据库,因为您做错了。理想情况下,您希望找到以最小化数据库使用的方式有效存储和表示数据的最佳方法,而像上面这样的映射关系将实现这一点。如果你担心的是MVC的话。。。用户有多个UserProfileField,其中有一个ProfileField。蛋糕让你建立和维持这种关系变得超级容易……比如说,我们确实有一个农民、电脑怪人、面包师、记者等等。每个用户配置文件都需要一组特殊的表单,这些表单最终位于不同的关系模式中。要实现一个能够满足所有需求的超级动态数据库模式,对我来说这听起来是一个乌托邦。。。。。