トピックが私が望むものを正しく意味するかどうかはわかりませんが、説明する方法がわかりません。私はオンライン試験アプリを構築しています。問題を簡単に説明するために、6つの表に焦点を当てます。
- コース:
has_many
トピック - トピック:
belongs_to
コース - 質問:
belongs_to
トピック、has_many
general_exams、スルー:: general_questions - GeneralExams :
has_many
質問、through:
general_questions、belongs_to
user、belongs_to
course、has_many
exam GeneralQuestions:
belongs_to
質問、belongs_to
general_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つの質問
これらの質問は、これらのトピックからランダムに得られます。一般試験を作成するためのフォームを作成しましたが、もちろんフォームでトピックを取得する方法がわかりません。また、トピックごとに入力番号の質問のフィールドを作成します。それで、新しい形式の一般試験のトピックをリストする方法はありますか?各トピックには、そのトピックに対してランダムに取得される番号の質問を入力するためのフィールドがありますか?または、その情報を格納するために新しいテーブルを作成する必要がありますか?