ruby-on-rails - 带有 reject_if 的 accepts_nested_attributes_for 的自定义属性版本

标签 ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4 activerecord

我正在尝试在下面创建一个自定义版本

  accepts_nested_attributes_for :categories, :reject_if => proc { |hash| hash['title'].blank? }

到目前为止我得到的是

  def categories_attributes=(categories_attributes)
    categories_attributes.values.each do |category_attribute|
      category = Category.find_or_create_by(category_attribute)
      categories << category
    end
  end

但我正在尝试向其中添加 reject_if 部分,但我似乎无法弄清楚。如何将该部分复制到下面的自定义属性中?

谢谢!

最佳答案

照这样做

accepts_nested_attributes_for :categories, reject_if: :title_blank

def title_blank(attributed)
  data = false
  data = true if attributed.title.blank?
  return data
end

关于ruby-on-rails - 带有 reject_if 的 accepts_nested_attributes_for 的自定义属性版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39607400/

相关文章:

ruby-on-rails - 何时使用关联扩展与命名范围?

ruby - 从Ruby Net::SSH session 获取输出

java - 使用 chef 安装 java

ruby - 在 Ruby 中循环的首选方式是什么?

ruby-on-rails-3 - 在 Rails 3.1 下根据请求使用自定义变量编译 Sass

ruby-on-rails - 如何在Ruby中设置通用错误/异常处理程序回调?

ruby-on-rails - 无法访问 Assets - dockerized Rails 应用程序,nginx 作为反向代理

ruby-on-rails - 联邦 express 和 UPS 实现

ruby-on-rails - 如何在Elasticsearch中搜索多代

ruby - 使用自定义顺序对数组进行排序