29

我正在阅读本指南中的 Rails 固定装置(谢谢,trevorturk)。看来您在 Yaml 文件中定义了类,它们会自动加载到test数据库中——很酷。

但是如果你想指定这个食谱属于那本食谱(或其他什么)你怎么做呢?

您是否应该在 Yaml 代码中手动cookbook.id指定值?recipe.cookbook_id(只是一个猜测——指南没有显示类似的内容。)或者有更合适的方法吗?

4

2 回答 2

63

您应该使用命名的固定装置,它会在您不提供的地方自动为您生成一个 ID 号。这些 id 数字本质上是您使用的任何字符串的整数哈希。如果您引用命名版本,请不要添加“_id”:

# recipes.yml
chicken_soup:
  cookbook: my_recipes

# cookbooks.yml
my_recipes:
  title: My Test Cookbook
于 2009-02-04T05:51:25.673 回答
5

此外,如果您希望有一个多对多关联( HABTM ),您只需在夹具中为关联提供一个数组:

# recipes.yml
chicken_soup:
  cookbooks: [my_recipes, another_recipe]
于 2016-12-14T08:55:51.573 回答