ruby-on-rails-4 - 创建交易时过滤掉不必要的fields_for记录

标签 ruby-on-rails-4 transactions fields-for

这个问题与我几个月前问的一个问题有关:Simple_Fields_For: Multiple Blank Lines on a Form

因为我需要在带有标题的表单上创建许多空白日记帐行,然后在其中创建多个记录:日记帐标题和许多日记帐行。问题得到了解答,我开始工作了。

但是,我有一个后续问题:

我最终构建了不必要的空白日记行,以便表单中有足够的空间供用户添加行。然而,当我执行创建时,如果没有填写所有行,我最终会在表中出现几个“空白”条目。

是否有 Railsy 方法来过滤掉这些行,以便在创建事务时忽略它们?

我想我可以预处理参数,或者一次添加一行检查,但我更喜欢一种更适合 Rails 的方法。有吗?

最佳答案

我猜您想在渲染 fields_for 时从集合中过滤掉一些内容。

fields_for 接受第二个参数,其中包含集合中的元素。默认情况下,整个集合都会被传递,或者您可以通过提供过滤条件来覆盖。

<%= f.fields_for :journal_lines,@journal.journal_lines.present? do |jl| %>

<% end %>

希望这对其他人将来有帮助。

关于ruby-on-rails-4 - 创建交易时过滤掉不必要的fields_for记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27353507/

相关文章:

mysql - 在mysql中显示当前事件的事务

ruby-on-rails - 带有 simple_form : add new table row with link_to_add 的 Rails

ruby-on-rails - 将对象转换为散列然后将其保存到用户的列

ruby-on-rails - postgres 中的小数列。有没有一种方法可以存储没有尾随零的值

java - 与事务相关的 View 中语句的可见性?

ruby-on-rails - Rails 3.2 - Accept_nested_attributes_for 和 View - 表单不出现

ruby-on-rails-4 - Rails 4.0 和 Cocoon : nested fields under fields_for don't appear in Edit

javascript - rails : Disable form field when checkbox is checked

html - CSS - 将一个元素定位在另一个元素周围。彼此漂浮

.net - NHibernate:多个实体,一个事务-多个存储库?