Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.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 试图找出数据库表关系(Rails/ActiveRecord)_Ruby On Rails_Ruby_Activerecord - Fatal编程技术网

Ruby on rails 试图找出数据库表关系(Rails/ActiveRecord)

Ruby on rails 试图找出数据库表关系(Rails/ActiveRecord),ruby-on-rails,ruby,activerecord,Ruby On Rails,Ruby,Activerecord,因此,我将在未来两周内开发一个网络应用程序,旨在将音乐学生与音乐教师联系起来 这一切都将通过使用RubyonRails和ActiveRecord数据库来完成 我正试图用适当的关系规划我的数据库,并希望在前进之前确保一切顺利 我的想法是让用户与用户交互 这将包括以下列: 名字(字符串) 姓氏(字符串) 位置(字符串) 移动(布尔) 简历(文本) 电子邮件(字符串) 密码(字符串) 每个模型中的关联都类似于 班级学生 有很多:老师,通过辅导 你有很多乐器吗 然后 班主任 有很多:学生,通过

因此,我将在未来两周内开发一个网络应用程序,旨在将音乐学生与音乐教师联系起来

这一切都将通过使用RubyonRails和ActiveRecord数据库来完成

我正试图用适当的关系规划我的数据库,并希望在前进之前确保一切顺利

我的想法是让
用户
用户
交互

这将包括以下列:

  • 名字(字符串)
  • 姓氏(字符串)
  • 位置(字符串)
  • 移动(布尔)
  • 简历(文本)
  • 电子邮件(字符串)
  • 密码(字符串)
每个模型中的关联都类似于

  • 班级学生
  • 有很多:老师,通过辅导
  • 你有很多乐器吗
然后

  • 班主任
  • 有很多:学生,通过:辅导
  • 你有很多乐器吗
然后是一张桌子

  • 乐器(弦)
  • 技能水平(整数)*在模型中使用枚举与初级、中级和高级关联
  • 模型将是(属于(:学生/:教师)
然后,用户之间的联接表将是一个辅导表:

  • 属于:学生
  • 属于:老师
  • 你上过很多课吗
然后是一张课桌

  • 属于:辅导
到目前为止,我的问题是,当我在Rails中设置迁移时,表中是否会遗漏任何内容

我想我需要放一些东西,比如,
t.attown\u to:student
,但因为这是一种
用户
用户
之间的关系,感觉不舒服


我在这里遗漏了什么?我知道有些地方不对劲。

SQL数据库是高度规范化的,但您当然可以将学生和教师ID复制到课程中,从而实现非规范化,为了提高性能,有理由这样做

事实上,有一种情况下,这是一个好主意,想象一个老师生病了,一节课由替换老师讲授。无需创建新的辅导,只需为这一节课指定一位不同的老师即可


当然,您缺少的是时间戳/日期。

SQL数据库是高度规范化的,但是您当然可以将学生和教师ID复制到课程中,从而实现非规范化,并且为了提高性能,有理由这样做

事实上,有一种情况下,这是一个好主意,想象一个老师生病了,一节课由替换老师讲授。无需创建新的辅导,只需为这一节课指定一位不同的老师即可


当然,您缺少的是时间戳/日期。

您只需要将t.atto\u添加到辅导和仪器表中,而不是教师,如果您想知道的话


您可能想添加一些状态栏来区分学生和教师上的活动/前/…如果您想知道的是,您只需要将
t.attown\u to:student
添加到辅导和仪器表,而不是教师


你们很多人都想添加一些状态栏来区分学生和教师的主动/前/…我想知道
辅导
表是否也需要参考
工具
。我想如果学生和教师可能都有多个工具,那么可能不清楚在特定辅导中教授什么工具?或者是由导师来选择一个吗?嗯。你是什么意思,或者更好地说-在你看来,它是如何实现的?我想学生和老师都会有一个
工具/技能水平
,然后他们会因为共同的兴趣而联系起来。也许我在想这个问题正确吗?我想知道
辅导
表是否也需要参考
工具
。我想如果学生和老师都有多个工具,那么可能不清楚在一个特定的辅导中教授什么工具?或者是由导师自己选择一个?嗯。你的意思是什么,或者更确切地说,这是什么意思你的观点是什么?我在想
学生
老师
都会有一个
工具/技能水平
,然后他们会因为共同的兴趣而联系起来。也许我想的不对?