7
Equipment.create(name: "Room to run") 
Equipment.create(name: "Pull-up bar") 
Workout.create(
    description: "Do 100 pull-ups then run 5km", 
    :equipment => Equipment.where(:name => 'Pull-up bar')) 

設備和訓練有一個HABTM關係。上述種子代碼有效,但我怎樣才能在第一次同時分配第二個設備關聯?導軌 - 播種HABTM協會

回答

7

在where條件,你可以使用數組:

Equipment.create(name: "Room to run") 
Equipment.create(name: "Pull-up bar") 
Workout.create(
    description: "Do 100 pull-ups then run 5km", 
    :equipment => Equipment.where(:name => ['Pull-up bar', 'Room to run'])) 
+0

在這個例子中使用設備是不幸的。名詞設備既是單數也是複數,它隱藏了一個重要的細節。如果我們在談論狗,這個例子看起來像::dogs => Dog.where(:name => ['Fido','Butch'])) – 2016-11-03 22:47:46

2

在種子文件這個簡單的列表的產品和類別(HABTM)關係的工作。這是超文字和有效的。

Product.find(1).categories << Category.find(4) 
Product.find(1).categories << Category.find(5) 
Product.find(2).categories << Category.find(5)