トピックが私が望むものを正しく意味するかどうかはわかりませんが、説明する方法がわかりません。私はオンライン試験アプリを構築しています。問題を簡単に説明するために、6つの表に焦点を当てます。
- コース:
has_manyトピック - トピック:
belongs_toコース - 質問:
belongs_toトピック、has_manygeneral_exams、スルー:: general_questions - GeneralExams :
has_many質問、through:general_questions、belongs_touser、belongs_tocourse、has_manyexam GeneralQuestions:
belongs_to質問、belongs_togeneral_exam試験:
belongs_to一般試験、belongs_toユーザー
これは、テーブルGeneralExamの列です。
name,description,semester,number_question,duration,used, user_id, course_id
私が今やりたいのは、一般的な試験を作成することです。もちろん、トピックごとにいくつかの質問を指定できます。たとえば、「データベース」という名前のコースには、A、B、Cの3つのトピックがあります。次に、 「データベース」コースの一般試験を作成します。一般的な試験を作成するときに具体的にしたい:
- トピックAの5つの質問
- トピックBの6つの質問
- トピックCの7つの質問
これらの質問は、これらのトピックからランダムに得られます。一般試験を作成するためのフォームを作成しましたが、もちろんフォームでトピックを取得する方法がわかりません。また、トピックごとに入力番号の質問のフィールドを作成します。それで、新しい形式の一般試験のトピックをリストする方法はありますか?各トピックには、そのトピックに対してランダムに取得される番号の質問を入力するためのフィールドがありますか?または、その情報を格納するために新しいテーブルを作成する必要がありますか?