私は繭をインストールし、ここで説明されている例に従って必要な変更をすべて追加しました: https://github.com/nathanvda/cocoon/wiki/ERB-examples
しかし、何らかの理由で、パーシャル内に何も表示されません。
ビュー/order_items/_order_item_fields.html.erb:
<div class="nested-fields">
<div class="field">
<%= f.label :material %>
TEST
</div>
<%= link_to_remove_association "remove order_item", f %>
</div>
ビュー/注文/new.html.erb:
<div class="container text-center mt-4">
<%= form_for @order do |f| %>
<div class="container">
<div class="row">
<h2>New Order</h2>
</div>
</div>
<div id="order_items">
<%= f.fields_for :order_items do |order_item| %>
<%= render "order_items/order_item_fields", f: order_item %>
<% end %>
<div class="links">
<%= link_to_add_association "add order_item", f, :order_items %>
</div>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
</div>
注文.rb:
class Order < ApplicationRecord
belongs_to :user, optional: true
has_many :order_items
accepts_nested_attributes_for :order_items, reject_if: :all_blank, allow_destroy: true
end
テンプレートが見つからないというエラーも表示されます。
Missing partial orders/_order_item_fields, application/_order_item_fields with {:locale=>[:en], :formats=>[:html], :variants=>[], :handlers=>[:raw, :erb, :html, :builder, :ruby, :coffee, :jbuilder]}.
別のビューフォルダーからパーシャルをレンダリングしようとしている場合、パーシャル名の前にフォルダーを追加するとうまくいくはずです:
<%= render "order_items/order_item_fields", f: order_item %>
_order_item_fields.html.erb
からviews/order_items
自分のディレクトリに移動すると、ページはレンダリングされますが、パーシャルviews/orders
内にはまだ何も表示されません。order_item_fields