哪个Rails现役模特协会?
Which Rails active model association?
我正在努力思考一些 ActiveModel 关联策略。
这是我要实现的目标:
- 一个
Quiz
属于一个Lesson
- A
User
可以参加测验(他们不拥有它)
- 测验分数已保存并属于用户
因此,我认为我需要一个 through
类型 table,例如 user_quiz_scores
,它将为我提供包含以下列的跟踪信息:
- quiz_id
- user_id
- user_quiz_score
假设到目前为止这个思维过程是正确的,模型看起来像:
class Lesson < ApplicationRecord
has_one :quiz
end
class Quiz < ApplicationRecord
belongs_to :lesson
end
class Score < ApplicationRecord
has_many ??????
end
class User < ApplicationRecord
has_many :scores
end
分数 model/table 真是让我费解的问题。也许我把这个复杂化了?非常感谢任何help/advice!
乍一看,好像是这样的:
class Lesson < ApplicationRecord
has_one :quiz
end
class Quiz < ApplicationRecord
belongs_to :lesson
has_many :scores
has_many :users, through: :scores
end
class Score < ApplicationRecord
belongs_to :user
belongs_to :quiz
end
class User < ApplicationRecord
has_many :scores
has_many :quizzes, through: :scores
end
我正在努力思考一些 ActiveModel 关联策略。
这是我要实现的目标:
- 一个
Quiz
属于一个Lesson
- A
User
可以参加测验(他们不拥有它) - 测验分数已保存并属于用户
因此,我认为我需要一个 through
类型 table,例如 user_quiz_scores
,它将为我提供包含以下列的跟踪信息:
- quiz_id
- user_id
- user_quiz_score
假设到目前为止这个思维过程是正确的,模型看起来像:
class Lesson < ApplicationRecord
has_one :quiz
end
class Quiz < ApplicationRecord
belongs_to :lesson
end
class Score < ApplicationRecord
has_many ??????
end
class User < ApplicationRecord
has_many :scores
end
分数 model/table 真是让我费解的问题。也许我把这个复杂化了?非常感谢任何help/advice!
乍一看,好像是这样的:
class Lesson < ApplicationRecord
has_one :quiz
end
class Quiz < ApplicationRecord
belongs_to :lesson
has_many :scores
has_many :users, through: :scores
end
class Score < ApplicationRecord
belongs_to :user
belongs_to :quiz
end
class User < ApplicationRecord
has_many :scores
has_many :quizzes, through: :scores
end