0

私はレールが初めてで、次のような状況のアプリに取り組んでいます:

ユーザーはスキルを持っています (例: ラフティング、ダンス) ユーザーはコンテストに参加します コンテストは複数のスキルを測定します 各コンテストの最後に、各ユーザーはスコアを取得します (例: ダンス: 5、ラフティング: 4)

これをモデル化する最良の方法は何ですか?

ありがとう、

4

1 に答える 1

1

これは厄介になりました:s最後に、これが正しい方法であるかどうかは実際にはわかりませんでした

class Skill < ActiveRecord::Base
  has_many :skill_scores
  has_many :user_skills
end

class UserSkill < ActiveRecord::Base
  belongs_to :user
  belongs_to :skill
end

class SkillScore < ActiveRecord::Base
  belongs_to :user
  belongs_to :contest
  belongs_to :skill
end

class User < ActiveRecord::Base
  has_many :skills
  has_many :contests, :through => :contest_participations
  has_many :skill_scores
end

class Contest < ActiveRecord::Base
  has_many :users, :through => :contest_participations
  has_many :skill_scores
end

class ContestParticipation < ActiveRecord::Base
  belongs_to :user
  belongs_to :contest
end
于 2012-04-28T01:55:53.797 に答える