Ruby on rails Rails 5.1.4多个对象的字段
我有一个Ruby on rails Rails 5.1.4多个对象的字段,ruby-on-rails,ruby,Ruby On Rails,Ruby,我有一个作者和书模型。一个作者可以有许多书,但一本书只能有一个作者 在创建新的作者的过程中,如何添加“新书”按钮,该按钮将为作者表单添加字段?我希望能够添加多本书籍。到目前为止,我发现的方法只是为添加固定数量的字段,如下所示: <%= form_with(model: author, local: true) do |form| %> ... <% 5.times do %> <%= form.fields_for :books do |bo
作者
和书
模型。一个作者可以有许多书
,但一本书只能有一个作者
在创建新的作者
的过程中,如何添加“新书”按钮,该按钮将为作者
表单添加字段?我希望能够添加多本书籍
。到目前为止,我发现的方法只是为添加固定数量的字段,如下所示:
<%= form_with(model: author, local: true) do |form| %>
...
<% 5.times do %>
<%= form.fields_for :books do |books| %>
...
<% end %>
<% end %>
...
<% end %>
...
...
...
我不想这样,如果作者有超过5本书怎么办?我希望能够动态添加书籍。有什么解决方案吗?如果您对添加一个新的依赖项很满意,那么还有gem,它允许您更轻松地处理嵌套表单 这是一个附加的依赖项,但添加新关联记录的代码很简单,如下所示:
<%= form_for author do |f| %>
...
<%= f.fields_for :books do |book| %>
<%= render 'book_fields', f: book %>
<%= link_to_add_association 'add book', f, :books %>
<%end%>
...
如果您对添加一个新的依赖项很满意,那么还有gem,它可以让您更轻松地处理嵌套表单
这是一个附加的依赖项,但添加新关联记录的代码很简单,如下所示:
<%= form_for author do |f| %>
...
<%= f.fields_for :books do |book| %>
<%= render 'book_fields', f: book %>
<%= link_to_add_association 'add book', f, :books %>
<%end%>
...
author.rb
accepts_nested_attributes_for :books,
:allow_destroy => true,
:reject_if => :all_blank
在您的视图文件中
<div class="bank_account_details">
<%= f.fields_for :bank_account_details do |builder| %>
<p>
Book: <%= builder.text_field :name %>
<%= builder.check_box :_destroy %>
<%= builder.label :_destroy, "Remove Book" %>
</p>
<% end %>
<div>
<%= link_to_add_fields "Add Book", f ,:books %>
author.rb
accepts_nested_attributes_for :books,
:allow_destroy => true,
:reject_if => :all_blank
在您的视图文件中
<div class="bank_account_details">
<%= f.fields_for :bank_account_details do |builder| %>
<p>
Book: <%= builder.text_field :name %>
<%= builder.check_box :_destroy %>
<%= builder.label :_destroy, "Remove Book" %>
</p>
<% end %>
<div>
<%= link_to_add_fields "Add Book", f ,:books %>
请检查我的答案,让我知道它是否有效。您可以使用中的
link\u添加
功能。请检查我的答案,让我知道它是否有效。您可以使用link\u添加
功能。这看起来确实不完整。rails中不存在Afaiklink\u to\u add\u字段的方法。链接到添加字段
如何知道要呈现什么?您使用哪个gem来提供此功能?这看起来非常不完整。rails中不存在Afaiklink\u to\u add\u字段的方法。链接到添加字段
如何知道要呈现什么?您使用哪个gem来提供此功能?