Я использую Rails 6.0.2.2, Foundation, и хотел сделать несколько вложенных форм, используя Cocoon. Вот мои модели:
class Adventure < ApplicationRecord
alias_attribute :pcs, :player_characters
has_many :player_characters, dependent: :destroy
accepts_nested_attributes_for :player_characters
end
class PlayerCharacter < ApplicationRecord
belongs_to :adventure
end
А вот мои взгляды:
# _form.html.erb
<%= simple_form_for @adventure do |f| %>
<%= f.input :email %>
<%= f.input :test %>
<h3>PCs</h3>
<%= f.simple_fields_for :player_characters do |player_character| %>
<%= render 'player_character_fields', f: player_character %>
<% end %>
<div class='links'>
<%= link_to_add_association 'Add PC', f, :player_characters %>
</div>
<%= f.submit %>
<% end %>
# _player_character_fields.html.erb
<div class='nested-fields'>
<%= f.input :path %>
<%= f.input :race %>
<%= f.input :name %>
<%= f.input :player_name %>
<%= link_to_remove_association "remove PC", f %>
</div>
Ни render
, ни link_to
ничего не отображают. Я попытался создать другую частичку, и если я рендерим ее вне simple_fields_for
, она работает нормально, но как только она перемещается внутрь, она останавливается. Я перепробовал все решения, упомянутые здесь https://github.com/nathanvda/cocoon/blob/master/app/assets/javascripts/cocoon.js:
- создать файл в
app/javascript/src/cocoon.js
yarn add cocoon-js
yarn add github:nathanvda/cocoon#c24ba53
, но ничего не помогло, и я не получил никаких сообщений об ошибках в журнале консоли.