0

雖然我將使用Ruby on Rails,但這是關於建模數據庫併爲CMS設計自定義訪問控制系統的最佳方法的一般問題。所以不管什麼語言/分貝。我很樂意聽取所有專家的意見。設計:自定義訪問控制(根據某些條件限制頁面訪問)

我的問題: 我正在爲本地大學開發在線教學系統的早期過程。這個想法是,學生將能夠在他們的主要課程材料上獲得額外的幫助。

基本信息: - 計劃使用現有的CMS來管理內容(基本上是網頁)。

  • 內容由當然,主題,副主題,等

  • 的註冊學生可以登錄並看到相關的內容(所以只有看到他們簽署了課程材料)構成。

  • 當學生跟隨內容時,他/她需要做一些練習。

  • 有導師會檢查學生的進度,並在需要時提供進一步的幫助。 因此,練習結果會與學生記錄一起存儲,供導師查看。

  • 學生對練習的回答不分等級,但答覆在提交後提供。

  • 重大問題:有些教授希望強制學生在剩下的內容可用之前進行練習。其他教授希望在發佈內容塊時設定時間。或者它可以是兩者的組合。

定時發佈內容很容易。但我不知道如何對條件內容版本進行建模和設計。在這種情況下,條件是學生的進步(完成練習)。

爲了說明,我有這樣的內容:

1. Calculus 
    - 1.1 Limits 
    - 1.1.1 Basic principles 
    - 1.1.2 More basics (with exercise) 
    - 1.1.3 Answers to previous questions 
    - 1.2 Derivatives 
     - 1.2.1 Intro 
     - 1.2.2 Sample problems(with exercises) 
     - 1.2.3 Answers 
     - 1.2.3 More content .... 
    - 1.9 More calculus 
     - 1.9.3 Some other content that is available when all previous exercises are completed 
    2. Physics 
    3. Chem 

例子:一旦學生在微積分類招收 內容應積分僅可用。 1.1.3,1.2等內容只有在完成1.1.2練習後纔可以使用。所以這是一種鏈式反應。

因此,你可以看到有一些結構,但大多數依賴關係。 所以我想知道在數據庫中建立這個模型的適當方式是什麼,以及如何爲這樣的系統設計訪問控制。

有沒有人遇到類似的問題?任何想法,見解,參考將是最受歡迎的。

非常感謝。

回答

1

你可以使用一個已經完成的系統來處理所有這些。 Moodle是一個流行的開源替代品,您可以像安裝常規CMS一樣安裝它,它可以處理課程和學生,甚至測驗。 Here是這些「學習管理系統」的列表,有些是免費的,有些則不是。

+0

謝謝你的迴應。是的,我已經考慮過moodle。事實上,我們已經用它來管理課程內容。不幸的是,它對於我們的需求太龐大了。我們需要一些輕量級,因此一個新的項目。 – Swartz 2010-10-19 06:05:22