Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.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_Database_Sqlite - Fatal编程技术网

Ruby on rails 虚拟棒球网站的数据库架构结构

Ruby on rails 虚拟棒球网站的数据库架构结构,ruby-on-rails,database,sqlite,Ruby On Rails,Database,Sqlite,我正在尝试在Rails中创建一个模拟棒球网站。sim和fantasy的区别在于,sim基本上使用了现实生活中的名册,而在fantasy中,你可以将玩家招募到你的团队中。我在数据库设计方面已经有一段时间了。以下是我目前拥有的: 我的主要问题是,players\u teams表似乎非常重复,因为大多数球员不会在不同的球队。这意味着可能有数千个实体,其中玩家相同,团队相同,除了使用不同的id 干杯 你所说的“球员是一样的,球队也是一样的,除了有不同的id”是什么意思?此外,图表中缺少几个外键(mes

我正在尝试在Rails中创建一个模拟棒球网站。sim和fantasy的区别在于,sim基本上使用了现实生活中的名册,而在fantasy中,你可以将玩家招募到你的团队中。我在数据库设计方面已经有一段时间了。以下是我目前拥有的:

我的主要问题是,
players\u teams
表似乎非常重复,因为大多数球员不会在不同的球队。这意味着可能有数千个实体,其中玩家相同,团队相同,除了使用不同的
id


干杯

你所说的“球员是一样的,球队也是一样的,除了有不同的
id
”是什么意思?此外,图表中缺少几个外键(
message.sender\u id
->
user.id
message.receiver\u id
user.id
players\u团队。player\u id
players.id
团队。用户id
user.id
),并且您的命名模式不一致(
联盟
用户
团队
为单数,其他表格为复数)。谢谢,我没有意识到名称不一致。愚蠢的错误,但Rails解决了它。一个
球员
是一个团队中的球员,而一个
联盟
有多个团队。在用户开始交易球员或签下自由球员之前,每个联盟都有相同的团队和相同的球员。基本上,在一开始(在任何玩家交易之前),对于每个联赛,都会有一个
players\u teams
行,其中球员id将是所有联赛共享的球员,而球队id将是该联赛唯一的。这意味着将有同一行的副本,球员和球队相同,除了球队id略有不同。我开始意识到这真的不清楚。如果你的意思是
(playerA\u id,teamainleague\u id),(playerA\u id,teamainleague\u id)…
是的,这很好。这仍然是表达它的最清晰和最短的方式。是的,这就是我的意思…这更清楚了。我意识到这只是一个个人项目,可扩展性并不重要,但效率低下确实困扰着我。另外,
玩家团队
表应该是玩家、团队和lea之间的连接表吗还是因为一支球队属于一个联盟,这是多余的?