簡體   English   中英

如何擁有Active Admin嵌套和非嵌套資源視圖?

[英]How can I have an Active Admin nested and non-nested resource view?

用戶has_many交易。 我有活動管理員當前設置為使用belongs_to:user in admin / transactions.rb在用戶下嵌套用於基本CRUD的事務。 但是,我還需要一個頂級視圖,用於顯示跨用戶的事務記錄子集的事務。 我怎樣才能完成第二部分?

我認為現在最好的方法是傳遞“可選”選項:

ActiveAdmin.register Transactions do
  belongs_to :user, :optional => true
  ...
end

這樣,您將可以從主導航菜單以及特定用戶下的嵌套視圖訪問所有事務。

如果您想了解更多信息,可以參考下面的源代碼:

https://github.com/gregbell/active_admin/blob/0.4.x-stable/lib/active_admin/resource.rb

第131行

def include_in_menu?
  super && !(belongs_to? && !belongs_to_config.optional?)
end

您需要創建兩個Active Admin資源,這兩個資源都引用需要嵌套和無效路由的相同Active Record Model。

父資源:

ActiveAdmin.register ParentClass do
end

嵌套資源:

ActiveAdmin.register ChildClass do
  belongs_to :parent_class
end

未使用的資源:

ActiveAdmin.register ChildClass, :as => "All Children" do
end

您現在可以通過“所有子項”選項卡直接訪問ChildClass,而不會獲得ParentClass丟失的錯誤,同時仍然可以從ParentClass享受對ChildClass的嵌套訪問。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM