我正在使用Rails 3.2.1,並將CookingVueue和DiningVenue這兩個模型與cooking_venues和dining_venues的相關MySQL表結合在一起。我已經建立了並且屬於兩個模型之間的許多關係,但是在這裏表示連接的名稱是什麼?has_and_belongs_to_many其中兩個模型都具有下劃線名稱
是不是cooking_venues_dining_venues
?
Will Rails會試圖找到烹飪和場地之間的habtm關係,或者Rails是否真的足夠聰明地完成這些工作?
非常感謝您的及時回覆。現在,我現在正在努力如何將條目添加到連接表中。假設我有一個現有的cooking_venue [id:3,desc:'Kitchen A']和現有的dining_venue [id:5,desc:'Nice Eatery'。我似乎對如何在Join表中匹配這兩個方面有一個心理障礙。很多關於如何創建連接表的內容,但關於如何創建條目本身並不多。可能很簡單,它不需要解釋.....除了我。 – nexar 2012-03-03 11:47:44
要回答我自己的第二個問題,這是我想出的。在CookingVenue_Controller中,我可以這樣做:c = CookingVenue.find(3)d = DiningVenue.find(5)c.dining_venues << d。這會在表格中創建正確的條目。我的問題現在變成:這是正確的'Rails'的做法還是有更優雅的? – nexar 2012-03-03 16:06:34
是的,<<運算符是正確的方法。但是,如果你想創建對象,當添加時,你可以使用c.dining_venues.create({:attribute_name =>'屬性值'}) – xaph 2012-03-04 03:15:59