ruby-on-rails - activeadmin:为嵌套资源添加删除

标签 ruby-on-rails ruby activeadmin

我有一个为许多数据中心组成的基础设施对象。在 apps/admin/infrastructures.rb 我有以下代码:

form do |f|
  f.inputs "Infrastructure details" do
    f.input :name

    f.has_many :datacenters do |datacenter_form|
      datacenter_form.input :name        
    end
  end
  f.buttons
end

我可以毫无问题地添加数据中心,但我不知道如何从基础设施表单中删除它。

最佳答案

2017 年 9 月更新:

Rails 5.1.4,ActiveAdmin 1.0.0

permit_params 中附加 :id_destroy 以及模型的其他属性,例如:name 在你的情况下。然后在 f.has_many 中也提供 :allow_destroy 选项。其他要求不变;比如在 accepts_nested_attributes_for 中添加 allow_destroy: true

最后的样子:

ActiveAdmin.register Infrastructure do
  permit_params :name, datacenters_attributes: [:id, :_destroy, :name]

  form do |f|
    f.inputs "Infrastructure details" do
      f.input :name

      f.has_many :datacenters, heading: false,
                               allow_destroy: true,
                               new_record: false do |datacenter_form|
        datacenter_form.input :name        
      end
    end
    f.buttons
  end
end

ActiveAdmin Reference


这对我有用:

     i.input :_destroy, as: :boolean

并且在模型中记得添加 :allow_destroy :

     accepts_nested_attributes_for :images, allow_destroy: true

关于ruby-on-rails - activeadmin:为嵌套资源添加删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8980714/

相关文章:

ruby-on-rails - 删除 staging.rb 和 production.rb 之间的重复

ruby-on-rails - 如何处理 UTF-8 电子邮件 header (如主题 :) using Ruby?

ruby-on-rails-4 - 在编辑期间添加事件管理员评论

ruby - Rails - ActiveAdmin 未在菜单中显示新资源

sql - Activeadmin 自定义过滤器失败

ruby-on-rails - 如何使用 Ruby on Rails 中的映射表跟踪模型历史?

ruby-on-rails - 用于链接到命名空间中的模型的 yardoc 语法是什么?

ruby - 当用 Ruby 写入文件时,为什么它有时会发生在我接下来的几行代码之后?

ruby-on-rails - 通过 Git 更新/部署 Rails 应用程序的最佳工作流程是什么?

ruby-on-rails - 如果我的日期格式在Rails中不正确,如何正确显示验证错误?