Seb*_*ien 3 ruby-on-rails ruby-on-rails-3 activeadmin
如果模型具有:updated = true,我想在索引页面上以红色显示一行.我怎么能用activeadmin做到这一点?
谢谢
feb*_*Ink 11
从Active Admin 1.0.0pre1开始,可以根据该行中记录的属性指定行类.要将类分配给具有更新记录的行,您可以编写以下内容,假设您有一些更新检查功能was_updated?:
应用程序/管理/ my_model.rb
ActiveAdmin.register MyModel do
...
index(:row_class => -> record { 'my-class' if record.was_updated? }) do
# whatever columns you want:
# selectable_column
# id_column
# column :attribute
# actions
end
...
end
Run Code Online (Sandbox Code Playgroud)
这个新选项在源代码中被注释为索引作为表.
但是,Active Admin的SCSS 在指定表行(或更确切地说,表数据)颜色时使用了很多特性,因此只需.my-class { background-color: red; }在样式表中写入就无法使用自定义颜色覆盖它们.但我发现以下内容可以使用:
应用程序/资产/样式表/ active_admin.css.scss
...
tr.odd, tr.even {
&.my-class {
td.col {
background-color: red;
}
}
}
Run Code Online (Sandbox Code Playgroud)
Active Admin 的表格呈现硬核如下ActiveAdmin::Views::TableFor:
def build_table_body
@tbody = tbody do
# Build enough rows for our collection
@collection.each{|_| tr(:class => cycle('odd', 'even'), :id => dom_id(_)) }
end
end
Run Code Online (Sandbox Code Playgroud)
因此,最简单的方法可能是对该方法进行猴子修补。我不知道子类化是否有帮助。
| 归档时间: |
|
| 查看次数: |
4807 次 |
| 最近记录: |