web-dev-qa-db-ja.com

Activeadminが「新しいリソース」メソッドを無効にする

私が作業している(それを愛している)アプリの管理インターフェイスにActiveadminを使用していますが、リソースショーページの右上隅にある[新しいリソース]リンクを無効にする方法があるかどうか知りたいですか?

私が使用している特定のリソースは別のリソース内にネストされており、その親リソースの表示ページから作成できるパーシャルがあります。

メニューでリソースを無効にしましたが、メニューにリソースを残したいので、親リソースを調べてリソースを見つける必要なく、それらのリソースを表示/編集/削除できます。

39
YuKagi

Config.clear_action_itemsをお試しください!

32
makvool

以前の解決策は私にとってはうまくいかなかったので、ここでは常に機能する一般的な解決策を示します:

ActiveAdmin.register Book do
  actions :index

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

  index do
    column :title
    column :author
  end  
end
70
makaroni4

これにより、右上から[新しいリソース]ボタンが削除されました。

    config.clear_action_items!

これにより、[新しいリソース]ボタンと[まだリソースがありません-作成]ボックスの両方が削除されました。

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

ありがとう、イリオ

24
ea0723

これは私がしました:

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

可能なアクションの一部を無効にします。 action_methodsは、7つの標準CRUDアクションの配列を返すため、不要なアクションを減算できます

6
jpbalarini
config.clear_action_items!

すべてのアクションを削除します。新しいアクションリンクのみを削除する場合は、次も使用できます。

config.remove_action_item(:new)
6
hcarreras

私はこれが古い質問であることを知っていますが、たまたまそれを思いついただけで(同じ問題を抱えていました)、config.clear_action_items!およびactions :all, :except => [:new]は根本的に異なります。

config.clear_action_items!は、インデックスページからNewボタンを削除しますが、actions :all, :except => [:new]はボタンとルートの両方を削除します。つまり、別の場所から呼び出すことはできません(私の場合は必要です)。

6
Pedro Rodrigues

あるいは:

ActiveAdmin.register Purchase do
  config.clear_action_items!
  actions :index
end
4
irio
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

#---------------------------------------------------------------------------------------------
0
Balius