Frage

Ich verwende ActiveAeDmin für die Admin-Schnittstelle in einer App, an der ich arbeite (liebe es), und ich bin gespannt, ob es eine Möglichkeit gibt, den Link "New Resource" in der oberen rechten Ecke der Ressourcen-Show-Seite zu deaktivieren?

Die bestimmte Ressource, die ich verwende, ist in einer anderen Ressource verschachtelt, und ich habe ein Teil, das es ermöglicht, auf der Show -Seite auf dieser übergeordneten Ressource erstellt zu werden.

Ich habe die Ressource im Menü deaktiviert, aber ich möchte die Ressource lieber im Menü überlassen, damit ich diese Ressourcen sehen/bearbeiten/löschen kann, ohne sie durch die übergeordneten Ressource zu suchen.

War es hilfreich?

Lösung

Versuchen Sie config.clear_action_items!

Andere Tipps

Die frühere Lösung hat für mich nicht funktioniert, also hier sind allgemeine Lösungen, die immer funktioniert:

ActiveAdmin.register Book do
  actions :index

  #or like that
  #actions :all, :except => [:destroy]

  index do
    column :title
    column :author
  end  
end

Dadurch wurde die Schaltfläche "Neue Ressource" von der oberen Rechten entfernt:

    config.clear_action_items!

Dadurch wurde sowohl die Schaltfläche "Neue Ressource" als auch das Box "Es gibt noch keine Ressourcen - erstellen".

    actions :all, :except => [:new]

Danke, Irrio

Ich weiß, dass dies eine alte Frage ist, aber ich bin gerade darauf gekommen (hatte das gleiche Problem) und erkannte das config.clear_action_items! und actions :all, :except => [:new] sind grundsätzlich unterschiedlich.

config.clear_action_items! wird die entfernen New Schaltfläche von der Indexseite, während actions :all, :except => [:new] Entfernen Sie sowohl die Taste als auch die Route, was bedeutet, dass Sie sie nicht von einem anderen Ort aus aufrufen können (was in meinem Fall benötigt wird).

config.clear_action_items!

Wird alle Aktionen entfernen. Wenn Sie nur den neuen Aktionslink entfernen möchten, können Sie auch verwenden:

config.remove_action_item(:new)

Ich war das:

controller do
  def action_methods
    if some_condition
      super
    else
      super - ['new', 'create', 'destroy']
    end
  end
end

Einige der möglichen Handlungen zu deaktivieren. action_methods Gibt ein Array der 7 Standard -CRUD -Aktionen zurück, sodass Sie diejenigen subtrahieren können, die Sie nicht wollen

Oder auch:

ActiveAdmin.register Purchase do
  config.clear_action_items!
  actions :index
end
Worked for me too ! :-) 

ActiveAdmin.register AssetSumView do
             menu :label => "Asset Summary View", :parent => "Things"
# no button for NEW (since this is a db view)
#---------------------------------------------------------------------------------------------
config.clear_action_items!

    enter code here

   action_item do
      link_to "Assets" , "/admin/assets" 
    end

   action_item do
      link_to "AssetCatgCodes", "/admin/asset_catg_codes"
    end

#---------------------------------------------------------------------------------------------
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top