Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何为不同类型的用户建模?_Ruby On Rails_Ruby On Rails 4_Associations_Active Relation - Fatal编程技术网

Ruby on rails 如何为不同类型的用户建模?

Ruby on rails 如何为不同类型的用户建模?,ruby-on-rails,ruby-on-rails-4,associations,active-relation,Ruby On Rails,Ruby On Rails 4,Associations,Active Relation,我的应用程序将是一个玩家数据库。这是数据库的核心数据点。玩家(又名…玩家档案)是用户将登录以查看/编辑/更新/删除的内容 把它想象成一个招聘数据库,在那里我(作为一名招聘人员)可以登录查看我想招聘到我的团队中的球员类型 因此,我正在努力解决的是如何对用户关系进行建模。这里是商业规则 每个玩家都应该能够登录更新自己的个人资料 每个玩家不必拥有用户帐户,但如果他们愿意,他们可以拥有 每个玩家都具有普通“用户”记录所不具备的属性(例如化身、学术成绩、视频等) 每个教练都可以登录查看球员的所有个人资料

我的应用程序将是一个
玩家数据库
。这是数据库的核心数据点。玩家(又名…玩家档案)是用户将登录以查看/编辑/更新/删除的内容

把它想象成一个招聘数据库,在那里我(作为一名招聘人员)可以登录查看我想招聘到我的团队中的球员类型

因此,我正在努力解决的是如何对用户关系进行建模。这里是商业规则

  • 每个玩家都应该能够登录更新自己的个人资料
  • 每个玩家不必拥有用户帐户,但如果他们愿意,他们可以拥有
  • 每个玩家都具有普通“用户”记录所不具备的属性(例如化身、学术成绩、视频等)
  • 每个教练都可以登录查看球员的所有个人资料
  • 每个教练都应该能够将其他教练/招聘人员添加到他们的帐户中
  • 每个管理员应该能够CRUD玩家
这是一个棘手的问题…一个
播放器
应该只是另一个模型…因为它们是整个应用程序的中心记录(就像图像可能在图像共享站点上一样)。变得棘手的是,每个玩家
都可以与用户记录关联,但不必关联


这些协会是什么样子的?什么才是
用户
类的角色,什么才是与另一个模型的关联?

用户有一个:profile
?我在想……但是……请记住,
用户
可以是
教练
管理员
。在这种情况下,他们不需要一个
配置文件
。我认为你把db设计问题与应用程序设计/可用性/任何问题混淆了。显然,一些玩家将在各自的用户加入网站之前创建,因此必须有一种方法来“声明”个人资料。在这里,你必须确保声称拥有个人资料的人(所以现实世界中想要连接到他们先前存在的个人资料的人)是他们所说的人。这同样不是db设计问题。