- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有 2 个资源 - 书架和书,每个书架都有很多书。
有没有办法按书架对书籍(在书籍索引页面上)进行分组?具体来说,我希望按书架对书籍进行排序,并且每当书架发生变化时,我想在书籍列表中指出这一点(在一个书架上的书籍和另一个书架上的书籍之间插入一个带有新书架名称的 h3 标题)
我正在使用 rails 3.2 和 activeadmin 0.6.0。
最佳答案
在 Rails 4.2.5.2 上使用 ActiveAdmin 1.0.0.pre2,结果非常简单。该解决方案本质上只有 20 行自定义 ActiveAdmin View 类。
note the file names on the first line as a hint where to put the code or make additions/changes to existing files.
# config/application.rb
module MyApp
class Application < Rails::Application
config.autoload_paths << config.root.join('lib')
end
end
# models/book.rb
class Book < ActiveRecord::Base
belongs_to :shelf
def shelf_name
shelf.name
end
end
# admin/books.rb
ActiveAdmin.register Book do
index as: :grouped_table, group_by_attribute: :shelf_name do
# columns
end
end
# lib/active_admin/views/index_as_grouped_table.rb
require 'active_admin/views/index_as_table'
module ActiveAdmin
module Views
class IndexAsGroupedTable < IndexAsTable
def build(page_presenter, collection)
if group_by_attribute = page_presenter[:group_by_attribute]
collection.group_by(&group_by_attribute).sort.each do |group_name, group_collection|
h3 group_name
super page_presenter, group_collection
end
else
super
end
end
end
end
end
index_as_grouped_table.rb
中到底发生了什么:
IndexAsGroupedTable
扩展 ActiveAdmin 的
IndexAsTable
类并覆盖
build
添加分组功能的方法。
admin/books.rb
文件,在索引宏中,您定义了一个附加选项
:group_by_attribute
它命名
Book
上的属性名称分组的类。
IndexAsTable
的行为。
group_by
该属性的集合,
sort
散列并使用每个
group_name
运行一个 block 和
group_collection
从那个哈希,打印一个
<h3>
与
group_name
然后调用
IndexAsTable
的
build
方法 (
super
) 来显示标准表。
note: this does not involve additional sql for the grouping. this uses ruby's
group_by
method of theEnumerable
class. thus, it may be slow if you have many rows in the collection.
关于ruby-on-rails - activeadmin 资源索引页面上的组记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17349856/
我正在尝试使用 Active Admin 中已经存在的收集操作“download_csv”来下载资源的所有记录。但是,该操作仅下载当前页面的内容。由于我已经对资源进行了分页,因此需要从所有页面下载数据
是否可以截断为 ActiveAdmin 索引页面中的属性显示的数据?我的一个属性包含大量文本,因此它使索引页上的表格布局难以查看。 我正在尝试这个... ActiveAdmin.register Po
升级到 0.6.1 后,ActiveAdmin 仪表板不再工作。仪表板现在返回错误: /app/app/admin/dashboards.rb:1:in `': uninitialized con
在 activeadim 中,过滤器始终显示在右侧,搜索字段水平向下。我需要将它们放在索引表上方的顶部。过滤器将水平呈现。 有没有办法做到这一点? 最佳答案 有一个 sidebar plugin您可能
我有一个带有 ActiveAdmin gem 的 Rails 3 应用程序。我的目标是在自定义 View 中呈现自定义 Controller 以保持其布局。 我成功地使用以下代码在自定义 View 中
我成功安装了 ActiveAdmin: 我的 gemfile 代码: 源' https://rubygems.org ' gem 'rails', '3.2.10' # Bundle edge R
我已经利用新的 ActionText 功能构建了一个小型 rails 6 应用程序。 但是,ActiveAdmin 中似乎不支持新字段类型 (rich_text_area) 我曾尝试使用 gem ac
我想在 activeadmin 中使用 batch_edit 来编辑多个产品并将它们分配给类别。 所以,我只想获取所有选定的 ID 并在事件管理中显示其他表单,以从下拉菜单中将这些产品 ID 分配给类
我在让 ActiveAdmin 与 CanCanCan 一起工作时遇到了一些麻烦。我在 Rails 4 应用程序中使用 CanCanCan 版本 1.9.2 和 ActiveAdmin 版本 1.0.
我有代码: ActiveAdmin.register MyTable 做 Controller 做 def edit #---This code doesn't work render :te
Activeadmin 在单个文件上注册一个页面,其中包含所有逻辑:索引、显示、编辑等。 我想将 task.rb 拆分为 task_index.rb、task_show.rb、task_edit.rb
我正在寻找一种在事件管理应用程序中翻译模型名称的方法。 fr: activerecord: models: project: Projet attributes:
我有2个模型。类别和帖子。它们使用 has_many_and_belongs_to_many 关系连接。我检查了 rails 控制台并且关系有效。 我在 activeadmin 中创建了复选框以使用此
activeadmin 是否支持二级菜单?例如,我尝试在“资源”下设置“安全”,在“安全”下设置“网络安全”和“应急计划” ActiveAdmin.register_page 'Safety' do
想知道是否可以使用事件管理员设置具有默认值的过滤器?这将有助于为管理员用户预加载数据。 filter :country, :default=>'US' 最佳答案 您可以通过定义 before_fil
我有一个模型 Camping其中has_many Images .露营至少需要一张图片: class Camping "At least one image is required" accep
我在 activeadmin 页面中遇到了一个无资源表单的问题: ActiveAdmin.register_page 'TestDashboard' do menu :label => 'Test
ActiveAdmin Docs 提到以下语法来嵌套子菜单: # https://activeadmin.info/2-resource-customization.html#customize-th
我发现了有关在activeadmin中使用Active Storage上传图像的有用文章:https://medium.com/@maris.cilitis/using-ruby-on-rails-a
在我的事件管理表单中,我正在检索多个用户的电子邮件、姓名、移动属性。我想以表格格式显示它,例如电子邮件、姓名、手机作为索引。 f.input :user_ids, :label => "Us
我是一名优秀的程序员,十分优秀!