2015-03-09 2 views
0

Я использую ActiveAdmin для моего приложения Ruby on Rails. Моя модель состоит из пары, таких как «План», «Страна» и т. Д. Я хотел бы иметь настраиваемую страницу для целей отчетности. Эта страница должна работать над набором выбранных планов. Итак, мне нужны scopes и filters. В настоящее время одна страница связана с моделью «План» для операций CRUD. Я не хочу добавлять что-либо еще к моей модели данных или базе данных, поскольку у меня есть все, что мне нужно в моей текущей модели. Как я могу сделать такую ​​страницу и получить доступ к ней через меню?Как добавить отчет/пользовательскую страницу в ActiveAdmin?

Могу ли я связать другую страницу с моей моделью «План» следующим образом?

ActiveAdmin.register Plan do 
    menu label: 'Report', parent: 'Planning', priority: 2 
    ... 
end 

Может ли пользовательская страница работать с набором планов, выбранных с использованием областей и фильтров?

ActiveAdmin.register_page 'Report' do 
    menu parent: 'Planning', priority: 2 
    ... 
end 

Или, как я могу добавить новую страницу/маршрут к текущей связанной странице с помощью модели «План» для отчетности? Может collection_action помочь мне? Если да, как я могу точно собрать коллекцию планов и показать их?

+0

Для создания отчета можно использовать 'Query report' камень, разработанный одним из моих коллег - https://github.com/ashrafuzzaman/query_report –

+0

В настоящее время, моя проблема с ActiveAdmin архитектуры. Однажды я могу принести модели с расширенным охватом/фильтром в новую страницу/маршрут, а затем я могу решить, как их представлять! В любом случае, спасибо за то, что я представил этот камень. – moorara

ответ

2

Вы можете зарегистрировать вашу модель ActiveRecord несколько раз в ActiveAdmin как новый ресурс:

ActiveAdmin.register Plan, as: 'PlanReport' do 
    menu label: 'Report', parent: 'Planning', priority: 2 
    ... 
end 

В этом файле вы можете использовать все функции ActiveAdmin, как объем и фильтры.

https://github.com/activeadmin/activeadmin/blob/master/docs/2-resource-customization.md#rename-the-resource

Смежные вопросы