ruby-on-rails – 在rails上的ruby中使用join表

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 在rails上的ruby中使用join表前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
说我有两个数据库:一个是学生,一个是课程.我想能够向特定学生添加课程,并且还可以将学生添加到特定课程.我假设我需要在这里使用连接表,但是我有点迷失在如何使用它们.我最终希望能够做一些像:
@class.students.find(@student_id)

这会告诉我学生是否在课堂上.我知道班级和学生之间的关系是“has_many”,反之亦然.在迁移文件中做“t.references:学生”是否完成了?我尝试将该行添加到我的迁移文件,然后尝试使用上面的语句找到一些东西,并给我一个错误.我是新来的RoR,所以我甚至不知道最好的方式来实现这一点.任何帮助是赞赏!

解决方法

是的,这是一个多对多的关系(类有很多学生,学生有很多班级).为此,您将使用has_many:通过关系.看看 ActiveRecord::Associations的文档(“Association Join Models”的Ctrl-F)).

在迁移中,t.references:学生是如何指定belongs_to关系的,因为它只是添加一个student_id列(只能容纳一个id,即一个学生).然而,连接模型将有两列:student_id和class_id. (顺便说一下,在Ruby中调用一个模型’Class’是要麻烦的,我可以建议’课程’吗?)

猜你在找的Ruby相关文章