ActiveAdmin-删除“删除管理员用户”选项

时间:2019-03-11 23:45:39

标签: ruby-on-rails ruby activeadmin

我正在尝试摆脱该选项,因此管理员无法删除自己。

当前,如图所示,管理员可以删除自己。

我不确定该如何处理?我检查了系统,可以看到ActiveAdmin布局的代码。但是,我无法查看。

删除管理员用户按钮:

enter image description here

app / admin / admin_user.rb:

ActiveAdmin.register AdminUser do
  index do
    selectable_column
    id_column
    column :email
    column :current_sign_in_at
    column :sign_in_count
    column :created_at
    actions
  end

  filter :email
  filter :current_sign_in_at
  filter :sign_in_count
  filter :created_at

  form do |f|
    f.inputs do
      f.input :email
      f.input :password
      f.input :password_confirmation
    end
    f.actions
  end
end

我添加了:

ActiveAdmin.register MyUser do
  config.remove_action_item(:destroy)
end

按照建议,我已经添加了代码,但是我仍然收到“删除管理员用户”按钮。

1 个答案:

答案 0 :(得分:2)

您有2个选项可以将其删除。

使用config资源文件中的active_admin变量将其删除的一种方法,例如

    ActiveAdmin.register MyUser do
        config.remove_action_item(:destroy)
        ...
    end    

否则,您可以通过actions这样的方法来跳过此操作:

    ActiveAdmin.register MyUser do
      actions :all, except: [:destroy]
      ...
    end

ActiveAdmin资源文件将位于代码的app/admin目录中。例如app/admin/admin_users.rb