我对Ruby on Rails很陌生,我尝试做一些并不复杂的事情,经过至少4个小时的研究,我开始认为Ruby不是& #39;太神奇了......
我有一个与模特相关联的嵌套表格。有"答案"表格属于"问题"表。答案得到了一个名字"和#34;正确"场(布尔)。现在我有了表格和
这是一个循环(HAML):
= builder.radio_button :correct, true
因此,每个字段生成一个单选按钮,用户可以填写。它起作用,它填补了正确的" "答案"中的字段table(这是" builder" here)
事实上,单选按钮与" name" RoR也使用HTML属性将所有内容与模型链接起来。我想只制作一个单选按钮组,每个单选按钮最终只有一组...
插图:
所以我开始尝试像
这样的事情 = builder.radio_button :correct, true, :name => "answers[correct]"
现在问题不在于HTML,因为按钮来自一个组。 RoR不知道如何将它与模型联系起来......是否有任何解决方案可以制作一个单选按钮组并且不会丢失" smart"将所有东西与模型联系起来的系统?
另一个例子:
谢谢,我已经有一段时间了,我正在寻找...
答案 0 :(得分:0)
因此,使用RoR系统无法自动完成,但我有一个很好的解决方案。
我在视图(HAML)中以这种方式更改了我的代码:
= answer.label :correct, "It's the correct answer", :value => answer.options[:child_index]
= answer.radio_button :correct, answer.options[:child_index], name: "question[answers_attributes][correct]"
在我的question_controller中我简单地说:
right_answer = params[:question][:answers_attributes][:correct]
params[:question][:answers_attributes][right_answer][:correct] = true
params[:question][:answers_attributes].delete :correct
它得到正确的参数并在循环后将其转移到正确的参数中。奇迹般有效。如果有任何人遇到嵌套单选按钮组的问题,这是一个解决方案:)