我在Rails中創建了一個測驗,我在我的關聯上畫了一個空白。ActiveRecord many_to_many關聯混淆
我說我有三張桌子,我知道會在那裏。
users
|___id
|___name
quizzes
|___id
|___user_id
questions
|___id
|___question
|___poss_answer_one
|___poss_answer_two
|___poss_answer_three
|___answer
|___test_version
這就是我開始的。該網站的功能如下:
用戶可以選擇最多三個類別的問題添加到他們的活動測驗(測驗)。因此,用戶一次只能進行一次測驗,因爲當他們完成或重新啓動新測驗時,將重新創建進入測驗表的條目。
因此,用戶has_one測驗並quizzes belongs_to用戶。
接下來,我假設一個測驗has_many的問題,因爲問題是可重用的,可以包含在許多不同的測驗,它會需要一個連接表嗎?
如果這樣會
quiz_questions
|___id
|___question_id
|___quiz_id
在這種情況下,將通過需要的has_many。
一旦我完成了這個工作,我知道如何建立關聯模型,我只是因爲措辭而迷惑自己。
這是我的理解,這是不贊成,應該與HMT協會完成。我只是想確保我對什麼屬於什麼是正確的理解。我理解它們之間的差異,但如果它是嚴格的連接表,則使用HABTM。 –
您的案例中的HABTM默認使用quizzes_questions表。它似乎並不被棄用。請參閱[API文檔](http://apidock.com/rails/v4.2.1/ActiveRecord/Associations/ClassMethods/has_and_belongs_to_many) –
好的,感謝您的信息,看起來像我在正確的道路上,只是簡單地迷惑了我自己。 –