Ich bin neu in Rails und arbeite an einer App mit der folgenden Situation:
Benutzer haben Fähigkeiten (z. B. Rafting, Tanzen) Benutzer nehmen an Wettbewerben teil Der Wettbewerb misst mehrere Fähigkeiten Am Ende jedes Wettbewerbs erhält jeder Benutzer eine Punktzahl (z. B. Tanzen: 5, Rafting: 4).
Was ist der beste Weg, um dies zu modellieren?
Vielen Dank,
Antworten:
1 für die Antwort № 1Das wurde böse: s Am Ende war ich mir eigentlich nicht sicher, ob das der richtige Weg ist
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