版本2.3.4
比方说,我有一个items
表,其中包含一些字段,例如:id, name, something, created_at, updated_at, is_dirty
。我正在使用活动脚手架来显示HTML表格。
class ItemsController < ApplicationController
layout 'application'
active_scaffold :item do |c|
c.columns = [ :id, :name, :something ]
c.show.columns.add [ :is_dirty, :created_at, :updated_at]
c.list.per_page = 20
list.sorting = {:created_at => 'DESC'}
end
# ...
end
我有一个由其他控制器驱动的导入功能。导入后,受影响的行“is_dirty
字段将变为true
,其他is_dirty
值保持不变。
在我想要突出显示某些行的项目列表中,使用is_dirty
字段为true
的一些刺激性颜色(例如黄色或粉红色)。我在整个网络上搜索,我发现只有字段覆盖。我对基于RJS的解决方案不感兴趣,因为与要完成的任务相比,这是一个荒谬的开销。
任何提示都是受欢迎和赞赏的,但我更喜欢那些不是基于复制和修改框架文件的解决方案的答案(但我仍然对它们感兴趣)。例如,具有良好的覆盖名称/配置项将是非常好的。
答案 0 :(得分:2)
可以在引发事件时向行中添加css类吗?这个导入是通过AJAX调用运行还是在加载DOM之前完成?如果它在加载DOM之前运行,我个人会在一些包含的js文件中添加一些jQuery:
$(document).ready(function() {
$('tr').filter(function() {
return $(this).attr('is_dirty');
}).addClass('ugly_yellow');
});
如果导入通过AJAX调用运行,则可以向处理程序添加类似的代码。
如果你不使用jQuery,我相信你可以在Prototype中做类似的事情,但我更喜欢jQuery,并建议每个人至少尝试一下:)