Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.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 具有多个的动态嵌套表单_Ruby On Rails_Ruby_Has Many Through - Fatal编程技术网

Ruby on rails 具有多个的动态嵌套表单

Ruby on rails 具有多个的动态嵌套表单,ruby-on-rails,ruby,has-many-through,Ruby On Rails,Ruby,Has Many Through,我的项目是一个锦标赛的网站,因此它有日历,它拥有并属于许多学科,我想做的是在创建日历时,能够通过复选框添加许多学科,但选中复选框后,我希望能够使用下拉列表来说明给定学科所属的年龄组 代码如下所示: <% Discipline.all.each do |discipline| %> <%= check_box_tag "calendar[discipline_ids][]", discipline.id, @calendar.discipline_ids.include(

我的项目是一个锦标赛的网站,因此它有
日历
,它拥有并属于许多
学科
,我想做的是在创建日历时,能够通过复选框添加许多学科,但选中复选框后,我希望能够使用
下拉列表来说明给定学科所属的年龄组

代码如下所示:

<% Discipline.all.each do |discipline| %>
    <%= check_box_tag "calendar[discipline_ids][]", discipline.id, @calendar.discipline_ids.include(discipline.id?) %>
    <%= discipline.title %>
<% end %>
Discipine模型

has_many :calendar_disciplines
has_many :disciplines, through: :calendar_disciplines
has_many :calendar_disciplines
has_many :calendars, through: :calendar_disciplines
是的,我想在复选框旁边添加另一个输入字段(选择下拉列表),这样用户就可以选择这门学科是针对成人、U-15还是两者,以及是针对男性、女性还是两者

你能告诉我怎么做吗


谢谢。

我想您希望第二个复选框的内容取决于第一个复选框的选择。如果没有从第一个复选框中触发的JavaScript片段,我还没有看到这样做。这可能会从服务器检索第二个框的内容,或者所有选项都已被缓存,脚本只需选择正确的选项即可。基本上,这超出了普通HTML的功能。但是,您还需要在日历模型中为:规程接受嵌套的属性才能修改任何内容。您还必须将日历控制器上的特定属性列为白名单。一段相当简单的JavaScript代码可以在的答案中找到,该代码仅根据第一个选择框启用和禁用辅助选择框。