Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/62.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 - Fatal编程技术网

Ruby on rails Rails允许嵌套属性

Ruby on rails Rails允许嵌套属性,ruby-on-rails,Ruby On Rails,我有这个嵌套表单,提交的测验和提交的答案。我将添加此表单的基本布局,以便您更好地理解它: <%= form_for([@user, @submitted_quiz]) do |f| %> <%= f.hidden_field :quiz_id, :value => @quiz.id %> <%= f.hidden_field :name, :value => @quiz.name %> <%= f.fields_for (:submitt

我有这个嵌套表单,
提交的测验
提交的答案
。我将添加此表单的基本布局,以便您更好地理解它:

<%= form_for([@user, @submitted_quiz]) do |f| %>

<%= f.hidden_field :quiz_id, :value => @quiz.id %>
<%= f.hidden_field :name, :value => @quiz.name %>

<%= f.fields_for (:submitted_answers) do |ff| %>
<%= ff.hidden_field :question_id, :value => question.id %>
<% end %>

<%= f.submit "Submit" %>
<% end %>

@quick.id%>
@quick.name%>
问题%id>

如您所见,我需要允许
:quick\u id
:name
提交的\u quick
,但我还需要允许
提交的\u答案的嵌套
:question\u id
。我知道如何只允许一个层(
submitted\u quick
),但我对如何允许嵌套层感到困惑

您可以通过两种方式完成:

1.只允许所有参数

params.require(:submitted_quiz).permit!
2.或按姓名:

params.require(:submitted_quiz).permit(:quiz_id, :name, submitted_answers_attributes: [:question_id])

使用蚕茧宝石。有关更多信息,请参阅我遇到了以下错误:
未定义的方法“call”For#您的意思是什么?呼叫方
。你知道为什么吗?