php - 我应该根据他们在 symfony2 和 mysql 中的角色制作一个或多个用户表

标签 php mysql database-design symfony

我有层次结构,其中有不同类别的用户,例如

  1. 员工管理员
  2. 教师
  3. parent
  4. 学生

我想把它们都放在一个名为 usertable 的数据库表中

但是所有类别都会有不同的属性,然后学生也会有他们的 parent 。因此,将有与自己的用户表的多对多关系。

但是如果我制作不同的表格,那么不同的人的登录过程会有所不同。

我该怎么走

最佳答案

由于用户将共享共同的详细信息,如用户名、密码等,因此您只需要一个user 表。您实际上应该使用 FOSUserBundle为了这。如果不同类型的用户有不同的唯一详细信息集,我建议为每个用户类型创建额外的表,并使用外键将用户从 user 表链接到新表(可能命名为 parent_profile, student_profile 等)

关于用户的层次结构,您应该使用角色。 Symfony2 docs拥有关于该主题所需的所有信息。

如果您需要将用户相互链接,请阅读 Doctrine 2 对 one-to-one self referencing 的支持。和 one-to-many self referencing协会。如果您为用户用户类型使用单独的实体类,则可以使用常规的一对一和一对多关联技术。

希望这对您有所帮助。

关于php - 我应该根据他们在 symfony2 和 mysql 中的角色制作一个或多个用户表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11424433/

相关文章:

php - 使用 PHP MySql JQuery 将数据检索到 ajax 下拉菜单中

sql - 是否首选在SQL事件中使用结束时间或持续时间?

php - 在 CodeIgniter 2.0 中返回并使用数据库中的多维记录数组

php - 如何在不使用太多内存的情况下强制下载大文件?

php - Doctrine manyToMany SQLSTATE [HY000] : General error: 1005 Can't create table (errno: 150)

java - (Tomcat) Java WAR 通过 SSL 连接到 MySQL

php - 更新所有数据库中的过程和 View

php - 使用 PHP 的 Azure 通知中心 REST API

sql - 我需要一个单独的表来描述 nvarchar(max)

database - Exclusive Arc 和多个多对多关系数据库设计问题