gpt4 book ai didi

ruby-on-rails - Rails 3 中的组合键关联

转载 作者:行者123 更新时间:2023-12-05 01:18:13 24 4
gpt4 key购买 nike

我的 Rails 应用程序中有 4 个模型:

类/教师/学生/作业

我需要一个:

类(class)与老师的n*n关系
n*n师生关系

对于这两个关系,没关系,因为我将为 has_and_belongs_to_many 创建 2 个迁移。

对于 Assignments 模型,我需要将它与之前的 3 个模型相关联:

分配表应该是这样的:
- 编号
- 标签
- 教室编号
- teacher_id
- pupil_id

以下是对最后一种关系进行建模的最佳方法吗?

class Assignment < ActiveRecord::Base
belongs_to: classroom
belongs_to: teacher
belongs_to: pupil
end

class classroom < ActiveRecord::Base
has_many: assignments
end

class teacher < ActiveRecord::Base
has_many: assignments
end

class pupils < ActiveRecord::Base
has_many: assignments
end

最佳答案

考虑多态关联 http://guides.rubyonrails.org/association_basics.html#polymorphic-associations

class Assignment < ActiveRecord::Base
belongs_to: assignable, :polymorphic => true
end

class Classroom < ActiveRecord::Base
has_many :assignment, :as => :assignable
end

关于ruby-on-rails - Rails 3 中的组合键关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9803180/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com