2012-11-18 90 views
0

我不確定這個主題會有我想要的正確含義,但我不知道如何解釋。我正在構建在線考試應用程序。爲了便於說明問題,我重點給6個表:如何在新窗體上創建與對象關聯的對象的輸入?

  1. 課程:has_many主題
  2. 主題:belongs_to當然
  3. 問題:belongs_to話題,has_many general_exams,通過::general_questions
  4. Gener alExams:has_many問題,through: general_questions,belongs_to用戶,belongs_to當然,has_many考試
  5. GeneralQuestions:belongs_to問題,belongs_to general_exam

  6. 考試:belongs_to一般考試,belongs_to用戶

這是表GeneralExam列:

name,description,semester,number_question,duration,used, user_id, course_id 

我想現在要做的,就是創建一個普通的考試,並能具體一些當然,每個主題的問題。例如,我有一個當然名爲「數據庫」有3個主題:A,B,C。現在我想爲「數據庫」課程創建一般考試。我想具體何時創建通用考試:爲話題

  • 5問題爲主題的B A
  • 6問題
  • 7問題的頁碼C

這些問題,我從這些話題隨機。我已經創建了一個用於創建普通考試的表單,但我不知道如何在表單上獲取主題,併爲每個主題的輸入數字問題創建一個字段。那麼有什麼方法可以在新的普通考試形式上列出主題,並且每個主題都會有一個字段來鍵入問題數量問題將隨機獲得該主題?或者我需要創建一個新表來存儲這些信息?

+0

你到底打算與輸入數字來做些什麼?你是否試圖確定要在表單中呈現多少個問題字段?否則,如果這是出於數據庫性能的原因,爲什麼不用[counter cache](http://railscasts.com/episodes/23-counter-cache-column)? – cdesrosiers

+0

我想要輸入主題的問題號碼,我會爲GE提供這些主題問題的隨機數。那我也想統計一下。 – Thanh

+0

因爲一個普通考試會爲學生生成考試,我想統計學生考試中每個主題的問題數量。 – Thanh

回答

1

這就是我要做的...

一個數據庫應該是它的「柔性」。 爲此,所有的信息存儲在不同的表.. 然後爲檢索數據的速度..建立一些關係表來顯示信息.. (取決於有多少人會使用你的系統)

左右....形式自上而下....

老師表(一個老師可以教很多coursee)......每一件事情從這裏開始) - > 課程表(這是所有其他的基礎) -----------------如下因素可能開始交叉全球化志願服務青年.. - > 話題表 - - > G-檢查桌大問題表可以在相同的水平
- > G-問題表應該是在底部電平(REF可以回克考試和Bi GQ)

(不需要保存教師信息或主題信息,因爲它是twwo級了.. 但你仍然可以存儲爲快速retriving數據.. 這些信息,但記得.. ,如果您需要信息已存儲後更改信息... 越簡單越好...

+0

我想我需要存儲老師和主題的信息,如果不這樣做,我不知道課程屬於誰,而主題屬於什麼課程。首先想想,我想我不需要創建新表來存儲一般考試的每個主題的題目數量,因爲它只是一個我得到這個題目的問題的數字,而問題已經知道它屬於哪個題目。但也許我需要創建新的表格以便快速檢索數據。我會考慮這一點,感謝您的建議。 – Thanh

0

我只是去了我的答案... 我發現一個錯誤,我說.. 我應該說:你不需要保存的老師或主題信息在G-問題表.. G-問題表僅保存問題鍵和G-考試鍵 和問題表和G-檢查表保存主題的關鍵 .....並退回頂級..

並創建一個快速訪問的快速訪問表,它可能會每天更新 (例如:顯示教師姓名,頂級名稱等)這些表的「鑰匙」掛不上名字

遺憾未能正確說它

+0

g-exam已經保存課程密鑰,如果它不知道一門課程有多少課題,它如何保存課程密鑰? – Thanh

相關問題