我在Rails中重寫了一個基於PHP的支持票據系統,並遇到了麻煩。 我有我的用戶表中創建和我的票表創建Rails 3.2中連接表的正確結構
create_table "tickets", :force => true do |t|
t.integer "user_id", :null => false
t.integer "department_id", :null => false
t.integer "upload_id", :null => false
t.string "subject", :null => false
t.text "body", :null => false
t.string "status_id", :null => false
t.text "url", :null => false
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "users", :force => true do |t|
t.string "fName", :null => false
t.string "lName", :null => false
t.string "seKey", :null => false
t.boolean "isAdmin"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.string "auth_token"
end
一切是偉大的工作,我能夠創造票,等... 現在我需要到1名或多個管理員分配給票,我不確定我是否應該使用has_and_belongs_to_many關係或has_many:through關係。
它目前在PHP中設置的方式是使用一個連接表,該連接表將userID與ticketID進行匹配。我認爲我不需要任何其他關於此關係的數據,那麼has_and_belongs_to_many是最好的選擇嗎?
另外,這是否會導致問題,因爲故障單已經與用戶表(原始創建者)中的記錄相關聯?基本上,票證將與用戶表有多個連接,其中一個將是提交它的人,其餘的是分配處理它的用戶。
在學習Rails的協會,這個[指南](http://guides.rubyonrails.org/association_basics.html)幫了我很多,請查看 – MalSu