Die Antwort ist in der configuration documentation for actions. Standardmäßig sind alle Aktionen möglich, einschließlich new
. Um die möglichen Aktionen anzupassen, listen Sie unter config.actions
in config/initilizers/rails_admin.rb
alle Aktionen auf, die Sie unterstützen möchten, und lassen Sie die Aktionen aus, die Sie nicht unterstützen möchten. Zum Beispiel, hier ist ein Konfigurationsblock, der alle Standardaktionen mit Ausnahme new
erlaubt:
# config/initilizers/rails_admin.rb
RailsAdmin.config do |config|
config.actions do
# root actions
dashboard
# collection actions
index
# `new` is NOT allowed
export
history_index
bulk_delete
# member actions
show
edit
delete
history_show
show_in_app
end
end
Hallo Rory, danke für schnelle Antwort. Da es in Initialisatoren war, galt es für alle Modelle. Es verbirgt alle Modelle neue Aktionen, aber ich möchte, dass es neue Aktionen in bestimmten Modellen versteckt. – Senthil
In diesem Fall, ich fürchte, ich weiß nicht, wie es geht. Vielleicht erklärt ein anderer Teil der [RailsAdmin-Dokumentation] (https://github.com/sferik/rails_admin/wiki) wie. Vielleicht musst du dir den [Quellcode] ansehen (https://github.com/sferik/rails_admin), um zu sehen, wie es geht - [diesen Teil] (https://github.com/sferik/rails_admin/blob/ master/app/controllers/rails_admin/main_controller.rb # L15-L26) relevant sein. Oder vielleicht unterstützt RailsAdmin diese Funktion nicht. –
Bei Bedarf kann es zu einem Hack kommen, bei dem Sie den Initialisierer mehrere Male ausführen können. Dadurch können Sie die "neue" Aktion deaktivieren, wenn Sie etwas mit diesem Modell tun, und es erneut aktivieren, wenn Sie auf ein anderes Modell zugreifen. –