Rails茧形嵌套形式:webpacker找不到茧

问题描述 投票:0回答:1

我正在使用茧形宝石构建嵌套表单,我希望用户在“ main_step”表单中填写任意数量的“ sub_step”。

这是我的代码:

MainStep模型

class MainStep < ApplicationRecord
    belongs_to :user
    has_many :sub_steps, inverse_of: :main_step
    accepts_nested_attributes_for :sub_steps, reject_if: :all_blank, allow_destroy: true
end

SubStep模型

class SubStep < ApplicationRecord
    belongs_to :main_step
end

sub_steps_controller

def index
    @sub_step = SubStep.new
    @main_step = current_user.main_step.last
end

def create
    # runs after I submit the form
end

sub_steps / index.html.erb

<%= form_for @main_step do |f| %>
     <%= f.fields_for @sub_step do |step| %>
         <%= render 'sub_step_fields', :f => step %>
     <% end %>
     <%= link_to_add_association 'Add', f, :sub_steps %>
     <% f.submit 'Confirm' %>
<% end %>

sub_steps / _sub_step_fields.html.erb

<div class='nested-fields'>
    <div class="field">
        <%= f.label :created_at %>
        <%= f.text_field :created_at %>
    </div>
    <%= link_to_remove_association "Remove", f %>
</div>

当我加载表单所在的页面时,单击“添加”按钮不会发生任何事情。通过检查日志,我注意到webpacker找不到茧形宝石,因此该表单无法正常运行。

我使用的是Rails 6.0.2,谢谢。

ruby-on-rails webpacker cocoon-gem
1个回答
0
投票

经过更多研究,我最终在这里:https://github.com/nathanvda/cocoon/pull/454

对我有用的是以下内容:

yarn add cocoon-js

然后添加到我的application.js

import 'cocoon-js';

© www.soinside.com 2019 - 2024. All rights reserved.