Ruby on rails Rails不保存/允许存储嵌套表单的值

Ruby on rails Rails不保存/允许存储嵌套表单的值,ruby-on-rails,forms,model,ruby-on-rails-5,associations,Ruby On Rails,Forms,Model,Ruby On Rails 5,Associations,My_feature.html.erb看起来像- <%= error_messages_for(@project) %> <div class="card m-auto shadow-lg p-3 mb-5 bg-white rounded"> <div class="card-body"> <%= form_for [@project, @feature], class: "form-group inline", remote: true d

My_feature.html.erb看起来像-

<%= error_messages_for(@project) %>
<div class="card m-auto shadow-lg p-3 mb-5 bg-white rounded">
  <div class="card-body">
  <%= form_for [@project, @feature], class: "form-group inline", remote: true  do |builder| %>
      <%= builder.hidden_field :feature_token_id, value: auto_generate_id %>

      <%= builder.hidden_field :category, class: "form-control", value: category_value %>

      <%= builder.label :name %>
      <%= builder.text_field :name, required: true, class: "form-control" %>

      <%= builder.label :desc, "Description" %>
      <%= builder.text_field :desc, class: "form-control" %>

      <%= builder.fields_for :task, remote: true do |form| %>
        <div class="form-group">
          <%= form.label :name %>
          <%= form.text_field :name, required:true, class: "form-control" %>
        </div>
        <div class="form-check">
          <%= form.check_box :completed, class: "form-check-input" %>
          <%= form.label :completed %>

        </div>
        <div class="form-group">
          <%= form.label :user_id, "Select the User to Assign this task:" %><br>
          <%= form.collection_select :user_id, User.all, :id, :name %>
        </div>

      <% end %>

      <%= builder.submit class: "btn btn-primary m-2" %>

  <% end %>
  </div>
</div>
若我退出pry,只有特征表更新为新值,而不是任务表!原木看起来像

  Feature Create (0.8ms)  INSERT INTO `features` (`name`, `desc`, `feature_token_id`, `project_id`, `created_at`, `updated_at`, `category`) VALUES ('ayann', 'uhi', '38378', 4, '2019-08-20 07:55:27', '2019-08-20 07:55:27', 'Current Iteration')
My feature.rb型号->

class Feature < ApplicationRecord
  belongs_to :project
  has_many :tasks, dependent: :destroy
  accepts_nested_attributes_for :tasks
end

我的嵌套模型任务没有保存的原因是什么?

问题出在_feature.html.erb文件中,在构建接受任务嵌套属性的表单时。该行试图为关系任务构建一个表单,但特征模型与任务有很多关系。将该行更改为builder.fields\u for:tasks将按预期作为tasks\u属性而不是task\u属性传递参数,这可能是当前正在发送的。

这似乎可行,我将检查并更新。。你能告诉我如何在主窗体中添加一个按钮来为我的窗体中的文件动态添加另一个字段吗?你必须使用JavaScript中的事件来完成这项工作。一种简单的方法是从一个可识别的id分配任务,并根据按钮的点击动态更改其行为,该按钮表示添加更多任务。另一种方法是使用gem-like Cocoon或本博客中提到的它的替代品:是的,我不能/不会使用任何gem,我如何实现按钮添加任务单击-你能提供任何代码示例或参考程序吗这将有助于:
  Feature Create (0.8ms)  INSERT INTO `features` (`name`, `desc`, `feature_token_id`, `project_id`, `created_at`, `updated_at`, `category`) VALUES ('ayann', 'uhi', '38378', 4, '2019-08-20 07:55:27', '2019-08-20 07:55:27', 'Current Iteration')
class Feature < ApplicationRecord
  belongs_to :project
  has_many :tasks, dependent: :destroy
  accepts_nested_attributes_for :tasks
end
class Task < ApplicationRecord
  belongs_to :feature
  belongs_to :user, optional: true
end