2012-01-06 47 views
0

我有一个关于活动管理界面的简单问题。定制active_admin界面

在我的应用程序中,我有一个资源添加到active_admin。当我从active_admin访问资源时,我获得了该资源的所有记录。当我选择/访问(作为show action)一条记录时,它显示了该实例和所有belongs_to关联的详细信息,但我不知道如何在show view中获取has_many或has_one关联详细信息?

任何想法?我很欣赏任何反馈。

谢谢,
Atarang。

+0

一种方法是在控制器中设置实例变量并在视图中访问它们。例如,如果研究has_many主题。然后在控制器中实例化'@subjects = @ study.subjects'。然后在scriplet中使用'@subjects'来呈现主题 – naren 2012-01-07 01:19:54

+0

这是真的,但是如何从active_admin接口访问此关联? – Atarang 2012-01-07 02:32:26

回答

4

您需要在app/admin/yourresource.rb中自定义您的显示屏幕。除了确保has_many和belongs_to关联是正确的之外,您不需要做任何其他特殊的事情。例如,如果你有许多项目的类别,这样做在category.rb:

show :category do 
    panel "Category Info" do 
    attributes_table_for category, :name, :created_at 
    end 
    panel "Items in This Category" do 
    table_for(category.items) do 
     column("Name", :sortable => :name) {|item| item.name } 
     column("Created At") {|item| item.created_at } 
    end 
    end 
end 

还有更多的好例子here和源的示范项目,该项目因某种原因难以找到elsewhere来自主站点。

+0

感谢您的回应。我会尝试这个和其他资源提到。再次感谢。 – Atarang 2012-01-09 06:46:57