Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails rails嵌套属性_Ruby On Rails_Ruby On Rails 3_Nested Forms_Nested Attributes - Fatal编程技术网

Ruby on rails rails嵌套属性

Ruby on rails rails嵌套属性,ruby-on-rails,ruby-on-rails-3,nested-forms,nested-attributes,Ruby On Rails,Ruby On Rails 3,Nested Forms,Nested Attributes,我正在使用rails 3.0.0.beta3,并且我正在尝试使用:accepts_nested_attributes_for实现带有嵌套属性的表单 我的表单嵌套到三个级别:调查>>问题>>答案 调查有很多问题,问题有很多答案 在调查模型中,有 :接受\u嵌套的\u属性\u用于:问题 在提问模式中,有 :接受\u嵌套的\u属性\u用于:答案 一切都很顺利,除非我给一个现有问题添加了一个新答案,它不会被创建。但是,如果在创建答案时对相应的问题进行更改,则可以成功创建答案 此示例与railscast非

我正在使用rails 3.0.0.beta3,并且我正在尝试使用:accepts_nested_attributes_for实现带有嵌套属性的表单

我的表单嵌套到三个级别:调查>>问题>>答案

调查有很多问题,问题有很多答案

在调查模型中,有 :接受\u嵌套的\u属性\u用于:问题

在提问模式中,有 :接受\u嵌套的\u属性\u用于:答案

一切都很顺利,除非我给一个现有问题添加了一个新答案,它不会被创建。但是,如果在创建答案时对相应的问题进行更改,则可以成功创建答案

此示例与railscast非常相似:

但在rails3中不起作用(至少在我的情况下)

如果Rails 3中的嵌套属性有任何问题,请告诉我


提前感谢。

请看一下卡斯珀·法布里克斯(Casper Fabricus)对那条铁路的评论93。他说,您必须在helper中的“link\u to\u add\u fields”方法中的“new\u object”周围放置“[]”


也许这正是您想要的?

如果您使用的是
attr\u accessible
请确保包含嵌套属性

class Survey < ActiveRecord::Base
  accepts_nested_attributes_for :questions
  attr_accessible :questions_attributes
end

class Question < ActiveRecord::Base
  accepts_nested_attributes_for :answers
  attr_accessible :answers_attributes
end
班级调查
另外,如果您仍然有问题,请参阅我在这里关于嵌套属性和模型验证的评论