ruby-on-rails - Rails,与父对象一起创建关联记录?

标签 ruby-on-rails nested-attributes

也许我不知道如何询问/搜索这个特定的东西,但基本上我想在创建父对象时创建一些关联的模型......说我有以下情况:

我有一个 Recipe其中has_many Ingredient模型......有没有办法一次制作它们,比如说这是我的种子任务的一部分,例如:

Recipe.create({
  :title => 'apple pie',
  :description => 'just apple pie',
  :ingredients => {
    [0] => {:title => 'apples'},
    [1] => {:title => 'sugar'},
    [2] => {:title => 'pie crust'}
  }
})

或者就像我完全疯了一样?必须有某种类似的方法来执行此操作,而无需创建父模型,然后创建所有子模型……等等。

最佳答案

相当接近。见 http://apidock.com/rails/v3.0.0/ActiveRecord/NestedAttributes/ClassMethods

Recipe.create({
  :title => 'apple pie',
  :description => 'just apple pie',
  :ingredients_attributes => [
    { :title => 'apples' },
    { :title => 'sugar' },
    { :title => 'pie crust' }
  ]
})

请注意,您需要将“accepts_nested_attributes_for :ingredients”添加到您的配方模型中。

关于ruby-on-rails - Rails,与父对象一起创建关联记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4568742/

相关文章:

ruby-on-rails - 如何从特定的 Ruby on Rails 页面中删除应用程序布局?

ruby-on-rails - has_many 嵌套表单,其中包含 has_one 嵌套表单

ruby - 嵌套形式多对多关系不允许的参数 Rails 4

ruby-on-rails-4 - Rails 4 - 带有 accepts_nested_attributes_for Controller 设置的嵌套表单?

ruby-on-rails - 如何使用 accepts_nested_attributes_for 在连接表中创建 > 1 个相关对象?

ruby-on-rails - 有条件地生成回形针附件的样式

ruby-on-rails - 在 Controller 中指定模型?

ruby-on-rails - Link_to create with parameter before - ForbiddenAttributesError 现在

ruby-on-rails - 如何使用 rspec 构建多对多模型?

ruby-on-rails - 来自基类的 Rails STI 条件子类化