Ruby on rails 使用ActiveAdmin的状态标记颜色

Ruby on rails 使用ActiveAdmin的状态标记颜色,ruby-on-rails,ruby-on-rails-3,activeadmin,Ruby On Rails,Ruby On Rails 3,Activeadmin,我的AA应用程序中有一个状态标签,只有一些颜色显示出来。有一些颜色我可以用还是不能用?找不到这方面的太多信息 这是我的订单 模块订购器 def priority_tag_for_order(order) printonrails_status_tag order_priority(order), color_for_weight(order.priority) end def color_for_weight(weight) case weight when '

我的AA应用程序中有一个状态标签,只有一些颜色显示出来。有一些颜色我可以用还是不能用?找不到这方面的太多信息

这是我的订单

模块订购器

def priority_tag_for_order(order)
  printonrails_status_tag order_priority(order), color_for_weight(order.priority)
  end

  def color_for_weight(weight)
    case weight
      when 'lowest'
        :gray
      when 'low'
        :blue
      when 'mid'
        :yellow
      when 'high'
        :orange
      when 'highest'
        :red
    end
  end
end
在中,您可以看到只有几种颜色可用,即绿色、橙色和红色

.status\u标签{
背景:深色($secondary color,15%);
颜色:#fff;
文本转换:大写;
字母间距:0.15em;
填充物:3px 5px 2px 5px;
字号:0.8em;
&.ok,&.published,&.complete,&.completed,&.green{背景:#8daa92;}
&.warn、&.warning、&.orange{背景:#e29b20;}
&.error、&.errored、&.red{背景:#d45f53;}
}
如果您想添加新的,您必须像这样编辑活动的_admin.css.scs

body.active\u admin{
.status_tag.blue{背景:63B8FF;}
}

我们可以通过在您的
active\u admin.scs
中定义我们自己的样式类来覆盖ActiveAdmin status\u标记(Yes/No)样式类。我使用的是ruby'2.5.3'。我只是想用不同的颜色来设计我的是/否状态标签,而不是默认的灰色,这对我很有用

body.active_admin {
        .status_tag.yes {
                background: #a9c68d;
        }
}

body.active_admin {
        .status_tag.no {
                background: #b3b3b3;
        }
}
现在我的仪表板看起来像这样


最好采用自定义类方法

status_tag 'TAG', class: 'class'

谢谢Luís。我喜欢CSS方法。非常干净。这篇文章解释了状态标签的用法:在上面的问题中,你可以发布状态标签(order.priority)并为每个优先级权重设置CSS颜色。自从写这篇文章以来,他们添加了
。yes
(一个漂亮的蓝色)和
。no
(一个深灰色)。还有默认的浅灰色。2019年,他们已经完全删除了颜色,现在只有一个是/否。将上面的复制/粘贴到.scs中以重新获得它。