我有两个模型:国家(表国)和专业(表专业)。国家包含世界上所有的民族,专业包括计算机科学、机械工程等所有的教育部门。这两种模型都有id和name字段,并包含以下关系。
国家模式(Nation.rb) has_many :专业
主要模式(Major.rb) has_many :国家
我想运行一个查询,例如:查找nation_id =x的所有专业(其中x是国家的id )。
我如何在rails中做到这一点?
我认为应该有一个包含如下映射的表:
id major_id nation_id
1 1 1
2 1 2
3 2 1
.
.
.每个专业都被映射到所属国家,反之亦然。我对rails很陌生,不知道该怎么做。
发布于 2017-10-17 09:26:28
关于为两者之间的映射创建第三个表,您是正确的。你有两个选择。您可以创建第三个表,以防您希望在其中包含major_id和nation_id以外的字段。
如果没有,则应该创建联接表。尽管试一试,如果它们是其他问题,请告诉我。这的文章以非常简单的方式解释了它。
https://stackoverflow.com/questions/46786665
复制相似问题