2013-09-27 92 views
-1

我要去開發一個大學管理項目,其中包括一些限制,設計Rails項目

  1. 還有一些學期從1到8個或更多
  2. 有一些科目,其中一個主題可以在不同的學期進行,因此一個學期有很多科目。
  3. 具有唯一ID的學生可以註冊一個學期。形成屬於該學期的科目,他可以選擇一些科目。
  4. 學生無法註冊到之前註冊的學期。但他可以註冊到另一個學期。

我該如何設計?

+5

像我們所有人一樣 - 坐下來用一張紙和一支鉛筆。 –

回答

0

模型是這樣的:

class Semester < ActiveRecord::Base 
    has_many :subjects 
    has_many :semester_students 
    has_many :students, :through => :semester_students 
end 

class Subject < ActiveRecord::Base 
    belongs_to :semester 
end 

class Student < ActiveRecord::Base 
    has_many :semester_students 
    has_many :semesters, :through => :semester_students 
end 

使用外鍵(semester_id,student_id數據,subject_id等)和關聯表(semester_students)實施一到一對一,一對多和多對多的關係。